我想知道为什么我的代码没有调用/运行函数:
TA = input('Would you like to throw again? (Y for yes and N for no) ')
if TA == ('Y') or ('y') is True:
classMain()
else:
print('Goodybye!')
这就是我用来调用函数的东西,这就是函数本身:
DI = input('\nHow many sides are on your dice? ')
def classMain():
global DI
DI
while DI.isdigit() is False:
DI = input('\nPlease enter a real number: ')
continue
break
那么如何调用函数(函数在第一位之前)?
你标记为重复和我的重复之间的区别在于函数没有运行,在这种情况下是classMain()。
答案 0 :(得分:1)
我想你的麻烦在于你对if TA == ('Y') or ('y') is True:
行为的期望。它不会检查TA
是Y
还是y
。相反,它会检查TA == 'Y'
,然后检查'y' is True
是否永远为真。
如果要为变量使用in
测试多个有效条件,请执行以下操作:
if TA in ('y', 'Y'):
最好使用.lower()
:
if TA.lower() == 'y':