【发布时间】:2018-12-03 00:22:48
【问题描述】:
这是我的代码。我刚开始学习Python。 我正在尝试生成一个随机数并猜测它。如果答案是 7,那么我的程序将打印“幸运”。如果没有,那就“倒霉”了。我尝试多次运行我的简单代码。每次我“倒霉”。有没有人知道问题出在我的算法中还是其他地方。顺便说一句,我真的很想知道我怎么知道具体知道python中随机生成的数字是多少?我只是想知道每次生成的相同数字是否相同。
from random import randint
z = input("What's the max number you want me to guess?")
choice = f"randint(1,{z})"
if choice == 7:
print("lucky")
else:
print("unlucky")
【问题讨论】:
-
生成的随机数是random。您无法事先知道将生成哪个号码。如果要查看生成了哪个数字,可以打印出来。
-
如果你想让你的程序产生的随机数序列是可重复的,你可以使用
seed函数(或者你可以用getstate保存状态并用setstate恢复它, 或者你可以创建一个Random实例并腌制和解开它,等等)。 -
嘿,米勒。太感谢了。我只是按照你说的做了。然后我发现假设为变量的选项实际上是一个字符串“randint(1.10)”(我尝试将 10 作为最大数)。所以这段代码一开始并没有意识到我想要做什么。我尝试做出选择 = randint(1,z)。 Visual Studio 告诉我 TypeError: +: 'set' 和 'int' 不支持的操作数类型。我该怎么办?
标签: python python-3.x random numbers