我想知道當(dāng)您有未知數(shù)量的下劃線時如何正確拆分字符串。我的輸入如下所示:One Two_________1.0 2.0 3.0Three Four______4.0 5.0 6.0Five Six________7.0 8.0 9.0在單詞和數(shù)字之間有未知數(shù)量的下劃線。我需要將此輸入拆分為單詞和數(shù)字。我嘗試split以這種方式使用:details = input.split("_")words = details[0]numbers = details[1]但是,它正確地只保存了單詞。當(dāng)我將輸入更改為只有一個下劃線時它起作用了,但是當(dāng)它有多個下劃線時我找不到解決方案。
3 回答

鴻蒙傳說
TA貢獻1865條經(jīng)驗 獲得超7個贊
您可以為此使用正則表達(dá)式。
import re
re.split('_+', 'asd___fad')
>>> ['asd', 'fad']
基本上,這是說“當(dāng)你看到一個下劃線(split第一個參數(shù)中的下劃線)或更多(下劃線后面的加號)時拆分”

婷婷同學(xué)_
TA貢獻1844條經(jīng)驗 獲得超8個贊
僅使用內(nèi)置函數(shù):
# slices input from beginning to first underscore
words = input[:input.find("_")]
# slices input from first underscore to the end, then replaces "_" with "".
numbers = input[input.find("_"):].replace("_", "")
添加回答
舉報
0/150
提交
取消