1
파일에 CSV 형식의 데이터를 쓰려고합니다. 필자가 작성한 데이터는 정수 쌍입니다. 불일치는 숫자 10이 쓰여질 때 "1"과 "0"사이에 쉼표가 붙습니다. 이것은 그냥 들어, 숫자 10 일 등 11파이썬에서 csv 작성기의 일관되지 않은 출력
코드 :
clocktimes = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]
with open('testfile.csv', 'w') as tf:
writer = csv.writer(tf)
for hour in clocktimes:
if hour in hourtimes:
writer.writerow(str((hour)).split(',') + str((hourtimes[hour])).split(','))
else:
writer.writerow((str(hour)) + (str(0)))
출력 파일 (hourtimes이 사전은 키와 값으로 정수로 구성됩니다) :
7, 0
8,0
9,0
1,0,0
11,144 12,112
13,80
왜 이런 일이 일어나는 지, 내가이 결과를 막기 위해 할 수있는 일을 아는 사람이 있습니까?
'hourtimes' 변수 란 무엇입니까? – Rishav
단일 문자열을 writerow에 전달하고 있습니다. 'writerow (row) '의'row'는 [documentation]에 따라 문자열이나 숫자의 시퀀스로되어 있습니다 (https://docs.python.org/2/library/csv.html#writer-objects). 'writer.writerow ((str (hour)) + (str (0)))'문자열은 문자열을 문자 목록으로 취급하고 CSV에 하나씩 씁니다. 'writerow'를 사용하지 않거나 올바른 데이터를 전달하십시오. –
시간 단위 변수 – alDiablo