→ s860134: 把你的程式碼貼出來 你的敘述不符合執行結果 10/08 19:31
→ s860134: name.partition(',') 輸出會是 tuple 不是string 10/08 19:31
我的原始檔案是讀入一個text檔案
長得像:
Mary, Waltons W
Linda, Wu
大概是這樣 以上為虛構名字 不一定每一位都有middle name
所以讀入後 是一個string
我設定他為name
然後我使用:
entries = re.split("\n+", name)
entries成為一個list 長相如下:
['Mary, Waltons W', 'Linda, Wu',]
後面還有很多筆資料
因為我想要得到first_name一個list
middle_name一個list
last_name一個list
所以我想要把他們從delimiter=,切隔開
biglist=entries
smallerlist=[l.split(', ')for l in ', '.join(biglist).split(', ')]
print(smallerlist)
就是我想要的:
['Mary, Waltons W']['Linda, Wu']
但我現在想要做到:
first_name = Mary
Last_and_middle = Waltons W (然後後續再切割一次)
我用的是
for item in smallerlist:
result = [word for line in item for word in line.split()]
會得到:
['Mary,Waltons', 'W']
['Linda, Wu']
就是幫我把first_name, middle_name 和Last_name用comma隔開
但我接下來不是很確定要怎麼將三者分開成三個list
而且有些人沒有middle name要放' '
小魯很新手 不好意思問了基本的問題
希望有做過類似提目的大大幫忙解惑
謝謝了~感恩!
※ 編輯: AmigoSafin (74.69.83.135 美國), 10/09/2019 08:29:37
→ darama: 應該先用逗號切出first name 10/11 15:05
→ darama: 剩下的用space切,如果切完的list長度是二就是有middle na 10/11 15:08
→ darama: me,然後再補空字串給沒有middle name 的case 10/11 15:08