我想從字符串中刪除最后 2 個子字符串,如下例所示:str="Dev.TTT.roker.{i}.ridge.{i}."
str1="Dev.TTT.roker.{i}.ridge.{i}.obj."如果在點之間的最后兩個字符串中.有一個,{i}我們也必須將其刪除。所以 python 腳本的結果應該是這樣的:str 的預期結果是:Dev.TTT.str1 的預期結果是:Dev.TTT.roker.{i}.
1 回答

繁星點點滴滴
TA貢獻1803條經驗 獲得超3個贊
您可以簡單地分割.并忽略空字符串或{i}.
也不要使用關鍵字作為變量。在您的情況下,不要用作str變量名稱。
def solve(s):
x = s.split('.')
cnt = 2
l = len(x) - 1
while cnt and l:
if x[l] == '' or x[l] == '{i}':
l -= 1
continue
else:
cnt -= 1
l -= 1
return '.'.join(x[:l+1]) + '.'
str1="Dev.TTT.roker.{i}.ridge.{i}."
str2="Dev.TTT.roker.{i}.ridge.{i}.obj."
print(solve(str1))
print(solve(str2))
輸出:
Dev.TTT.
Dev.TTT.roker.{i}.
添加回答
舉報
0/150
提交
取消