我对编程很陌生。这与python有关。所以想法是取3/5或最多3/5*2(最多两个运算符,注意运算符可以是+、-、/、*中的任何一个)之类的表达式并求解。空格可以存在于表达式中的任何位置。
用户输入表达式,比如 3/5,程序需要求解表达式并显示答案。我尝试过的如下。请注意,我只尝试了第一部分,一旦我可以正确拆分用户输入的原始表达式(这将是一个字符串),创建函数将是简单的部分:
expres= str(input("something:"))
ssplit= hit.partition("/")
onec= int((ssplit[0].lstrip()).rstrip())
twoc= (ssplit[1].lstrip()).rstrip()
threec= int((huns[2].lstrip()).rstrip())
print(onec,"...",twoc,"...",threec) #just a debug test print
因此,在上面,我可以将 3/5 之类的表达式拆分为三个单独的字符串:3、/ 和 5。我还可以删除运算符/操作数之前和之后的所有空格。我在拆分 4/5+6 之类的表达式时遇到问题,因为我无法为 ssplit[3] 或 ssplit[4] 输入代码,然后输入 3/5 之类的表达式,因为它不会被定义。基本上我需要你帮助找出如何拆分像 3/4-6 等的表达式。我还需要“”行的帮助,ssplit= hit.partition("/")
以便它可以查看输入的表达式并同时使用 +、- 和 *。任何和所有的帮助表示赞赏。另外,如果我上面的代码看起来很讨厌而且效率低下,请给我批评。谢谢!
注意我不能,也不想使用 eval。操作顺序是必需的。我不能使用复杂的命令。我需要保持简单,我最多可以使用字符串库,在字符串/整数/浮点数等以及 if、and 等之间进行转换。陈述。我也可以使用函数。