0
특정 지점에서 열릴 :파이썬 : 파일 정지는 내가 파이썬에서 다음 프로그램을 작성했습니다
- :
import re import os import string folder = 'C:\Users\Jodie\Documents\Uni\Final Year Project\All Data' folderlisting = os.listdir(folder) for eachfolder in folderlisting: print eachfolder if os.path.isdir(folder + '\\' + eachfolder): filelisting = os.listdir('C:\Users\Jodie\Documents\Uni\Final Year Project\All Data\\' + eachfolder) print filelisting for eachfile in filelisting: if re.search('.genbank.txt$', eachfile): genbankfile = open(eachfile, 'r') print genbankfile if re.search('.alleles.txt$', eachfile): allelesfile = open(eachfile, 'r') print allelesfile
그것은 많은 폴더를 통해보고,는 다음과 인쇄 경로가없는 각 폴더의 이름
- 각 폴더의 모든 파일 목록
- 각 폴더의 두 특정 파일 (".genbank.txt"및 ".alleles.txt"가 포함 된 모든 파일).
Traceback (most recent call last): File "C:\Users\Jodie\Documents\Uni\Final Year Project\Altering Frequency Practice\Change_freq_data.py", line 16, in <module> genbankfile = open(eachfile, 'r') IOError: [Errno 2] No such file or directory: 'ABP1.genbank.txt'
문제는 다음과 같습니다 : 가장 확실히 존재하는 정보 파일
- 프로그램 때문에, 특정 디렉토리에 도달 한 후 다음과 같은 오류와 함께 실패 할 때까지
코드는 작동 파일을 열기 전에 파일을 나열합니다.
- 원래 디렉토리 그룹에서 해당 디렉토리를 제거하더라도 프로그램은 반복되는 다음 폴더에 대해 동일한 오류를 발생시킵니다. 그리고 그 다음은 제거됩니다. 등등.
이렇게하면 폴더 나 파일이 아닌 파이썬의 일부 제한 사항이라고 생각합니까? 나는 모른다. 그것은 나를 곤란하게했다.
도움을 주시면 감사하겠습니다.
백 슬래시는 이스케이프 문자입니다. 'r'C : \ foo \ bar''와 같은 원시 문자열을 사용하거나''C : \\ foo \\ bar ''와 같은 백 슬래시를 이스케이프하십시오. 둘째, 디렉토리 구분자를 하드 코딩하는 대신 경로에 가입하려면 ['os.path.join'] (http://docs.python.org/library/os.path.html#os.path.join)을 사용하십시오. –
하위 디렉토리도 확인해야하는 경우 [os.walk] (http://docs.python.org/library/os.html#os.walk)를 사용하는 것이 좋습니다. – Velociraptors