亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何根據字符串中的預定義部分拆分列表中字符串的各個部分

如何根據字符串中的預定義部分拆分列表中字符串的各個部分

慕無忌1623718 2022-08-25 14:46:13
請幫我解決以下問題sample_list = ['Ironman.mdc.googlesuite.net', 'Hulk.nba.abc.googlekey.net',    'Thor.web.gg.hh.googlestream.net', 'Antman.googled.net', 'Loki.media.googlesuite.net','Captain.googlekey.net']我希望 list1 中前面的所有內容都位于 “googlesuite.net”、“googlekey.net”、“googlestream.net” 和 “googled.net” 之前,另一個列表中的相應前綴為:result_list1=['Ironman.mdc', 'Hulk.nba.abc', 'Thor.web.gg.hh', 'Antman', 'Loki.media', 'Captain']result_list2=['googlesuite.net', 'googlekey.net', 'googlestream.net', 'googled.net', 'googlesuite.net', 'googlekey.net']
查看完整描述

3 回答

?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

您始終可以使用“.”拆分列表中的每個字符串,并獲取新列表。在這種情況下,如果您只對第一個拆分感興趣,則應在 split 方法中使用第二個參數(它告訴發生次數):

first_list =[x.split('.')[0] for x in sample_list]

對于第二個列表:

second_list =[x.split('.',1)[1] for x in sample_list]

更好的方法是僅通過sample_list迭代一次并獲取兩個列表。如下圖所示:

first_list, second_list = zip(* [x.split('.',1) for x in sample_list])


查看完整回答
反對 回復 2022-08-25
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

使用列表理解以及:split


sample_list = ['Ironman.googlesuite.net', 'Hulk.googlekey.net',

    'Thor.googlestream.net', 'Antman.googled.net', 'Loki.googlesuite.net',

    'Captain.googlekey.net']

result_list1 = [i.split('.')[0] for i in sample_list]

print(result_list1)

這打?。?/p>


['Ironman', 'Hulk', 'Thor', 'Antman', 'Loki', 'Captain']

此策略是為每個輸入域僅保留組件,但不包括第一個點分隔符。對于第二個列表,我們可以在這里使用:re.sub


result_list2 = [re.sub(r'^[^.]+\.', '', i) for i in sample_list]

print(result_list2)

這打印:


['googlesuite.net', 'googlekey.net', 'googlestream.net', 'googled.net',

 'googlesuite.net', 'googlekey.net']


查看完整回答
反對 回復 2022-08-25
?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

謝謝你的答案,它確實有幫助,但如果我有這樣的列表怎么辦:

sample_list = ['Ironman.mdc.googlesuite.net', 'Hulk.nba.abc.googlekey.net',    'Thor.web.gg.hh.googlestream.net', 'Antman.googled.net', 'Loki.media.googlesuite.net','Captain.googlekey.net']

我希望 list1 中前面的所有內容都位于 “googlesuite.net”、“googlekey.net”、“googlestream.net” 和 “googled.net” 之前,另一個列表中的相應前綴為:

result_list1=['Ironman.mdc', 'Hulk.nba.abc', 'Thor.web.gg.hh', 'Antman', 'Loki.media', 'Captain']

result_list2=['googlesuite.net', 'googlekey.net', 'googlestream.net', 'googled.net', 'googlesuite.net', 'googlekey.net']


查看完整回答
反對 回復 2022-08-25
  • 3 回答
  • 0 關注
  • 88 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號