import easygui as eg
import sys
version = 'Percentage Calculator'
Options = [ 'Percantage Increase', 'Percentage Decrease' ]
button = eg.buttonbox ('What would you like to calculate', title = version, choices = Options)
if button == Options [0]:
enter = eg.enterbox ('Please enter a number between 0 and 999.', title = version, strip=False)
if enter < '0' or enter > '999':
eg.msgbox ('please choose a number between 0 and 999.', title = version, ok_button='OK')
sys.exit()
enter2 = eg.enterbox ('please enter a number between 0 and 999, that is bigger than the first number.', title = version, strip=False)
if enter2 < '0' or enter2 > '999':
eg.msgbox ('please choose a number between 0 and 999.', title = version, ok_button='OK')
sys.exit()
elif enter2 < var enter:
eg.msgbox ('please choose a number bigger than the first number.', title = version, ok_button='OK')
sys.exit()
Subtract = enter2 - enter
print (Subtract)
这是我的代码...如您所见,在底部附近,它说“ enter2-enter”,我希望它从第一个数字中减去用户输入的第二个数字,但它只是说...
Traceback (most recent call last):
File "C:\Users\olitr_000\Desktop\PYTHON\Percentage Calculator\Percentage Calculator.py", line 22, in <module>
Subtract = enter2 - enter
TypeError: unsupported operand type(s) for -: 'str' and 'str'
我该怎么做,说输入1等于55,输入2 = 198,我将如何获得它以使它等于198-55?
请帮助,我需要任何更多信息,请通知我。
您的问题是通过使用eg.enterbox函数,用户输入的数字将被视为字符串。为了解决这个问题,我们将输入框返回的“字符串”发送到int()函数。这会将数字字符串转换为可用于减去其他整数的实际整数。
例如。
enter = "3"
enter = int(enter)
enter2 = "4" #This is an example of what the variable looks like coming from the enterbox
enter2 = int(enter2) #enter2 now looks like 4 instead of "4"
output = enter2 - enter #this will return 1 to the variable output
希望这可以帮助 ;)
哦,您在这一行中不需要引号:
if enter < '0' or enter > '999':
正如您所说的“ 0”是一个字符串,不要将其视为数字;)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句