基本上,我正在写一个基本的“Hello World”的代码,以刷新我的记忆中,我被卡住。我想打印从列表numbers
随机选择,我要检查,看看是否我最初x
与随机选择的输出相匹配。然而,当我运行代码的所有我得到的是print("nice")
即使数不匹配。下面是代码:
import random
numbers = [1, 2, 3, 4, 5, 6]
x = int(input("Enter your guess: "))
def random_choice(numbers):
if x in numbers:
print(random.choice(numbers))
if numbers.count(x):
print("nice")
else:
print("not nice")
random_choice(numbers)
该numbers.count(x)
将返回数字x
的出现的次数,因为在代码的那个点你已经知道,在它里面x
的至少一个拷贝(因为该行是检查if
的x in numbers
内),它将始终返回正数是隐式转换为True
一种可能的方法是将随机值,并比较x
:
import random
numbers = [1, 2, 3, 4, 5, 6]
x = int(input("Enter your guess: "))
def random_choice(numbers):
if x in numbers:
temp = random.choice(numbers)
print(temp)
if temp == x:
print("nice")
else:
print("not nice")
random_choice(numbers)