【发布时间】:2013-11-09 20:30:16
【问题描述】:
def has_precedence(op1,op2):
opr = ["+", "-", "*", "/", "^"]
if op1 == opr[4]:
return True
else:
return False
if op1 == opr[3] & op2 != opr[4]:
return True
else:
return False
if op1 == opr[2] & op2 != opr[3] & op2 != opr[4]:
return True
else:
return False
if op1 == opr[0] & op2 == opr[1]:
return True
else:
return False
if op1 == opr[1]:
return False
else:
return True
print(has_precedence('/',"-"))
我想比较两个算术运算符并返回一个布尔值,但不幸的是我所做的这个方法不起作用,我不确定为什么
【问题讨论】:
-
对于初学者,
s = +和t = *不起作用。完全没有。你真正想做什么? -
您是否真的比较了 字符串
'+'和'*'?那将给出s > t,因为ord("+") == 43和ord("*") == 42,但这与运算符优先级无关。
标签: python operator-keyword operator-precedence