我正在解析來自多個excel文件的數據,轉換它們並將它們寫入單個csv文件。我能夠得到它的工作。但是,我決定將這些部分分解爲函數,並通過依次調用每個函數來運行腳本。Python unicodecsv.writer每次寫入新行時重寫所有以前的行
進行此更改後,劇本的作家部分以某種方式循環,現在寫入以下內容: HEADER_ROW,data_row1,HEADER_ROW,data_row1,data_row2,HEADER_ROW ...
下面是打印功能的地方問題正在發生。我已經確認DictList2中的數據是正確形成的,[headers]是準確的。
def PrintProcess2(directory2):
with open(directory2 + "participant list.csv", 'wb') as f:
headers = sorted([k for k, v in DictList2[0].items()])
csv_data = [headers]
for d in DictList2:
csv_data.append([d[h] for h in headers])
writer = csv.writer(f)
writer.writerows(csv_data)
在此函數的代碼是無功能的相同的版本,並且一個數據正確地寫入。在這一點上,我完全無法理解。有人可以幫忙嗎?
刪除無關'xlrd'標籤。 –