나는 csv 파일을 구문 분석하는 파이썬 코드가 있습니다. 이제 우리의 공급 업체는 gzip csv 파일로 데이터 파일을 변경하기로 결정했습니다. 내가해야 할 최소한의/가장 깨끗한 코드 변경이 무엇인지 궁금 해서요. 현재 함수 :Python "with"구문 구문
def load_data(fname, cols=()):
... ...
with open(fname) as f:
reader = csv.DictReader(f)
... ...
코드를 load_data2()에 복제하고 with 문을 변경하여 완벽하게 작동한다고 생각하지 마십시오.
with gzip.open(fname) as f:
with 문을 어떻게 제외 할 수 있습니까?
def load_data(fname, cols=()):
... ...
if fname.endswith('.csv.gz'):
with gzip.open(fname) as f:
else:
with open(fname) as f:
reader = csv.DictReader(f)
... ... # code to parse
당신은 파일 이름의 속성에 따라 다른 변수에 파일을 여는 데 사용할 함수를 지정하여이 작업을 수행 할 수 있습니다
fume.endswith ('. csv.gz')이면 fz로, gzip.open (fname)을 사용하면 f '로도 열 수 있습니다. – kindall
감사합니다. python이 아름답습니다. ! – fivelements