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('/',"-"))
我想比较两个算术运算符并返回一个布尔值,但遗憾的是这个方法,我做的不起作用,我不知道为什么
Python运算符不是对象。它们是语法。你不能用变量引用它们,也不能在Python中比较它们。
你会读到operator precedence documentation。优先级由编译器修复,而不是语言的动态方面。
编程语言运算符优先级已基本标准化;例如,Python遵循PEMDAS order。