我正試圖將另一部分綁定到現有的Python程序中。我對Python很陌生,即使有所有的幫助,也無法解決這個問題。我將在下面列出我現有的Python程序,我只想添加另一部分來執行另一個任務。將CSV列內容拆分爲多列
當前程序打開「initial.csv」,並在第一列中查找任何關鍵字。如果它匹配,它將行寫入「listname_rejects.csv」和任何不匹配的行中,它將寫入「listname.csv」。這聽起來倒退了,但對於我所做的,這是正確的。我用過它一千次。
現在,我想添加到這裏,是能夠看第2列(充滿地址),並將它們分成不同的列。例如,這 -
Name,Address,Phonenumber,ID
John,"123 Any Street, New York, NY 00010",999-999-9999,321654
打開到這個 -
Name,Street,City,State,Zipcode,Phonenumber,ID
John,123 Any Street, New York, NY, 00010,999-999-9999,321654
基本上,我需要能夠到第二列爆炸成單獨的列。我不需要在第2列中填寫整個地址,而是需要在第2列,3列,4列,&之間將其拆分。5.
我發現在堆棧溢出上接近此事件,但是又是新的到Python,並不知道如何將它們分成我的當前代碼。
key_words = [
'Suzy',
'Billy',
'Cody',
]
listname = raw_input ("Enter List Name:")
listname_accept = (listname) + '.csv'
listname_rejects = (listname) + '_rejected.csv'
with open('initial.csv', 'r') as oldfile, open(listname_accept, 'w') as cleaned:
for line in oldfile:
if not any(key_word in line.split(",", 1)[0] for key_word in key_words):
cleaned.write(line)
else:
matched.write(line)
我注意到兩件事:你的代碼沒有實現CSV。使用['csv'](https://docs.python.org/3/library/csv.html)模塊。這很容易,並避免了許多錯誤。其次:如果你想正確處理地址,解析地址並不是微不足道的。做一些搜索找到一些瘋狂的方式,在美國發生有效的街道和地址號碼。 – dsh
謝謝。我將在我的代碼中實現csv。我的csv文件中的地址都具有相同的共同趨勢,所以我想我可以實現一些東西。 – CFraley
@CFraley您能否始終保證「地址」符合以下格式:「」,,「'? –
LMc