假设我只是在寻找一个特定的字符,我会理解如何做到这一点,但在这种情况下,我正在寻找 4 个运算符中的任何一个,'+'、'-'、'*'、'/'。如果传递的字符串 txt 中没有运算符,该函数返回 -1,否则返回最左边的运算符的位置。所以我认为 find() 在这里是最佳的。
到目前为止我所拥有的:
def findNextOpr(txt):
# txt must be a nonempty string.
if len(txt) <= 0 or not isinstance(txt, str):
print("type error: findNextOpr")
return "type error: findNextOpr"
if '+' in txt:
return txt.find('+')
elif '-' in txt:
return txt.find('-')
else
return -1
我认为,如果我为其他运算符的“+”和“-”运算符所做的事情,它不适用于一个表达式中该运算符的多个实例。可以在这里合并一个循环吗?