我有我的一個(文件)查找數據,並將其匹配到其他的(文件B)一旦我找到合適的排在B我想寫兩個文件的.csv適當行中的特定單元格。另外我需要迭代這個,所以我可能會多次寫入文件b中的每一行。Python的CSV模塊同時讀寫
我可以寫一個CSV文件,然後一遍又一遍讀它?
def match(name, group, cnum):
for data in masterfile_list:
if (name in data[0]):
if (group in data[4]):
if (cnum == "112"):
data[7] = cnum
elif (cnum == "111"):
data[8] = cnum
elif (cnum == "110"):
data[9] = cnum
elif (cnum == "109"):
data[10] = cnum
elif (cnum == "108"):
data[11] = cnum
elif (cnum == "107"):
data[12] = cnum
elif (cnum == "106"):
data[13] = cnum
elif (cnum == "105"):
data[14] = cnum
elif (cnum == "104"):
data[15] = cnum
elif (cnum == "103"):
data[16] = cnum
elif (cnum == "102"):
data[17] = cnum
elif (cnum == "101"):
data[18] = cnum
我會理想地寫/替換匹配的行。
我很抱歉,但我是新來這個。如果使用readline – jimstandard1029
@ jimstandard1029,我仍然可以使用CSV模塊:通常,不,您不會將'csv'模塊與'readlines()'一起使用。但是,首先將所有數據讀入內存的建議仍然存在。取而代之的閱讀完所有的線一次(如'readlines方法()'一樣),你會遍歷所有行(通過'csv'模塊)。在你的「文件b」的情況下,你應該繼續前進,遍歷整個事情,在執行任何查找之前,將所有內容全部加載到內存中。然後,在完成計算之前,不要寫出任何內容,並在此時寫出所有內容。 –