2 개 이상의 CSV 파일을 만들고 for
싶지만 CSV는 1 개만 생성됩니다.
import csv
import os
foods = ['pasta','chocolate']
for food in foods:
with open(food+'.csv', 'w') as csvfile:
fieldnames = ['id', 'Category', 'Name']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
os.chdir('E:/data/'+food)
folders = os.listdir(os.curdir)
for filename in folders:
writer.writerow({'id':'', 'Category':food, 'Name':filename})
이 경우 만 pasta.csv
성공적으로 생성됩니다. 나는 chocolate.csv
또한 창조 하고 싶다 . 해결책이 있습니까? 감사
for가 작동하고 문제가 os.chdir
. 디렉토리 목록을 가져 오는 데만 필요하며 glob
대신 다음을 사용하는 것이 좋습니다.
import csv
from glob import glob
foods = ['pasta','chocolate']
for food in foods:
with open(food+'.csv', 'w') as csvfile:
fieldnames = ['id', 'Category', 'Name']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
folders = glob('E:/data/'+food+'/*/')
for filename in folders:
writer.writerow({'id':'', 'Category':food, 'Name':filename})
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다