gpt4 book ai didi

python - 我如何使用 .isalpha() 检测数学运算符

转载 作者:太空宇宙 更新时间:2023-11-04 09:53:41 25 4
gpt4 key购买 nike

我正在尝试检测使用了哪些数学运算符,然后将该运算符分配给一个变量。这是我的代码:

start = "3x - 2 = 11"
op = "+"

for m in start:
if m.isalpha():
if m == "-":
op = m
if m == "+":
op = m
if m == "*":
op = m
if m == "/":
op = m
print(op)

然而,尽管字符串开头有一个“-”,但它会打印“+”。有人知道为什么它不打印出“-”吗? (顺便说一句,这是 python 3)

最佳答案

假设存在唯一运算符,您可以将 start 中的字符与操作相交:

start = "3x - 2 = 11"
ops = set("+-*/")
op = list(set(start) & ops)[0] # op == '-'

如果 start 中有多个操作,则 set(start) & ops 将包含所有操作(如果没有操作,则为空)。

请注意,在您的示例中,您隐式使用了 *,因为 3x - 2 = 11 的预期含义可能是 3*x - 2 = 11

关于python - 我如何使用 .isalpha() 检测数学运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46793942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com