我想隔離數組的每個字符串元素的子字符串,使它是字符串,直到上一段。例如,我想有:字符串操作在Python中的數組的所有元素
input = 'A.01.0'
output = 'A.01'
或
input = 'A.0'
output = 'A'
而且我想一個數組的所有元素做到這一點。
我想隔離數組的每個字符串元素的子字符串,使它是字符串,直到上一段。例如,我想有:字符串操作在Python中的數組的所有元素
input = 'A.01.0'
output = 'A.01'
或
input = 'A.0'
output = 'A'
而且我想一個數組的所有元素做到這一點。
使用一些魔法rsplit:
x=["123","456.678","abc.def.ghi"]
[y.rsplit(".",1)[0] for y in x]
像這樣的事情?
>>> i = ['A.01.0', 'A.0']
>>> [x[:x.rfind('.')] for x in i]
['A.01', 'A']
如果找不到字符,'rfind'返回'-1',所以''abc「[:」abc「.rfind('。')]'將變爲'」ab「'而不是'」abc「'。這就是爲什麼rsplit在這裏更合適。 –
這是生成所需輸出格式的一種方法。你需要改變這個以適應你的需求。
output = input[:input.rindex('.')]
對於整個陣列:
arr = ['A.01.0', 'A.0']
arr = [x[:x.rindex('.')] for x in arr]
希望幫助:-)
注意到如果'。'會引發ValueError。不存在 –
@ F.C好的,謝謝你的提示。 – saadtaame
這聽起來像功課。如何發佈你到目前爲止的內容,以及你所困擾的內容。字符串有兩個函數'split'和'join',您會發現它們很有用。 – SteveMc