我正在编写一个代码,从字符串中删除"√"符号并获取其索引。通过使用python中的"enumerate"函数,我已经制作了一个功能强大的计算器,但我正在改进它。
代码:
cal = input(">>> ")
for i, c in enumerate(cal):
if c == '√':
cal = cal[0:i]+cal[i+1:]
print(cal)
输入:
>>> 123√456√789√123
输出:
123456√89√13
当我从字符串中删除一个字符时,我没有得到正确的输出——枚举函数会弄乱索引,所以我无法弄清楚。[我第一次使用堆叠流不要判断]
根据注释。你犯了一个典型的错误,即在循环浏览列表时编辑列表。编辑会更改列表,因此位置会不正确。
一个好的解决方案是:
cal = '123√456√789√123'
cal = cal.replace('√','')
cal
返回的是:
'123456789123'