CS50 Python 数学解释器问题,通过转换用户输入来制作一个简单的区分大小写的计算器。 它区分大小写,因为我想使用 .split(" ") 单独存储输入,以便稍后在代码中使用它们。
探针中建议使用 'x, y, z = expression.split(" ")' 让用户输入表达式
我第一次尝试这个,但我什至不确定我是否使用 .format() 做正确的事情
simp_arithmetic = input("Expression: ")
x, y, z = simp_arithmetic.split(" ")
if '+' in simp_arithmetic:
print(simp_arithmetic.format(x + z))
elif '-' in simp_arithmetic:
print(simp_arithmetic.format(x - z))
elif '*' in simp_arithmetic:
print(simp_arithmetic.format(x * z))
elif '/' in simp_arithmetic:
if z == '0':
print("z can't be 0")
else:
print(simp_arithmetic.format(x / z))
else:
print(" ")
在此之后,我改变了格式()
print(simp_arithmetic.format(int(x) + int(z))),
或者
print(simp_arithmetic.format(int:x + int:z))
我期待像 1 + 1 = 2.0 或类似的结果,但我的程序仅返回给定的值。
因为 input() 函数使您的 x, y, z 字符串类型,您应该将 x, z 转换为浮点数并熟悉 f"" 字符串,以使您的打印更易于阅读