我面臨的問題是能夠採用像「((1 + 4))+(2-1) - 3」這樣的字符串,並將它在[((1+ 4)),(2-1),3]。這也適用於其他數量的括號。我試着用索引來做它,並且沒有運氣就算括號。這裏是我到目前爲止的一些代碼:關於嵌套圓括號的Python
final = []
while("(" in string):
final.append(string[string.index("("):string.index(")")+1])
left = string[:string.index("(")]
right = string[string.index(")")+1:]
string = string.replace("+", ";")
string = string.replace("-", ";")
string = string.split(";")
for item in string:
if item.strip() != "":
final.append(item)
爲什麼列表中包含'3'? –
需要處理不嵌套在圓括號中的東西,因爲這是一個基本的和合理的數學表達式 –
難道你不想要更像[1 + 4,2-1,3]的東西,完全擺脫括號? – Guillaume