在第7行和第14行,我不知道如何划分变量。
import keyboard
import random
def main(Number, Start):
Number = random.randrange(1,100)
Start = False
QA = input('Press "K" key to begin')
if keyboard.is_pressed('K'):
Start = True
input('I"m thinking of a random number and I want that number divisible by two')
print(Number)
input('Please divide this by two. *IF IT IS NOT POSSIBLE RESTART GAME*\n')
if QA == int(Number) / 2:
print('.')
else:
print('.')
main(Number=' ' ,Start=' ')
2条答案
按热度按时间92dk7w1h1#
您可能想要的:
您的代码有什么问题:
my_number = 2 * random.randrange(1, 50)
。注意范围的变化。还要注意上限不包括在内,这可能不是您在这里的意思。检查是否可被N整除的典型方法是使用取模运算符:my_number % N == 0
。如果你想让用户以不同的方式处理奇数,你需要为此编写一个单独的分支。input
返回一个字符串。在您的示例中,QA = input('Press "K" key to begin')
返回"K"
(如果用户确实这样做了)或随机乱码(否则)。然后,您将通过调用keyboard.is_pressed
来检查一个完全不相关的状态:您在这里要做的是检查用户是否输入了K
(if QA == "K"
)或者,如果您只想在按下K
后立即继续,使用keyboard.wait('k')
。不过我建议现在坚持使用input
。注意小写/大写字母并非在所有情况下都可以互换,您可能不希望用户被迫按Shift+k
(据我所知,不是keyboard
包的情况)。input('I"m thinking of
不返回任何东西。您可能需要print
,可能需要f-strings来打印该提示沿着随机数。input('Please divide this by two.
也不返回任何东西,您肯定希望将其存储在某个地方,或者至少立即根据预期结果进行计算。Start
也没有执行任何操作。修订版本:
nhhxz33t2#
或者,可以使用模运算符%测试Number是否可被2整除:
如果编号% 2 == 0:打印(."“),否则:列印('.')
这将检查Number除以2的余数是否等于0,这表示Number可被2整除。