a = ["Its_My_Life_3:44","Say_It_Isn't_So_3:33","Thank_You_for_Loving_Me_5:09"]b = []我想b看起來像這樣b = ["Its My Life","Say It Isn't So","Thank You for Loving Me"]這是我正在努力使用的代碼,我正在努力尋找一個只會附加歌曲名稱、替換_為" "而不包含數字的條件。我知道我可以用格式做一些事情并替換,但我無法弄清楚。for song in a: b.append(song[0:8)]) # print(b)
3 回答

一只萌萌小番薯
TA貢獻1795條經驗 獲得超7個贊
怎么樣:
代碼:
b = [' '.join(x.split('_')[:-1]) for x in a]
如何?
這將拆分 上的字符串_
,丟棄最后一個字段,然后使用空格重新連接。
測試代碼:
a = ["Its_My_Life_3:44","Say_It_Isn't_So_3:33","Thank_You_for_Loving_Me_5:09"] print([' '.join(x.split('_')[:-1]) for x in a]
結果:
['Its My Life', "Say It Isn't So", 'Thank You for Loving Me']

ITMISS
TA貢獻1871條經驗 獲得超8個贊
使用str.replace()和r.partition()和列表理解
a = [i.replace('_', ' ') for i in a]
b = [i.rpartition(' ')[0] for i in a]
展開
b = []
for i in a:
i = i.rpartition(' ')
b.append(i[0])
單列表理解:
b = [(i.replace('_', ' ')).rpartition(' ')[0] for i in a]
添加回答
舉報
0/150
提交
取消