我想随机化列表中的单词,如果随机单词等于剪刀我想让游戏告诉我我已经赢了但是我找不到解决方案,你能告诉我哪里做错了吗?
我试过“if my inlist:”但仍然无法找到解决方案
import random
my_list = ["rock", "paper", "scissor"]
random.choice(my_list)
print(random.choice(my_list))
if random.choice(my_list) == my_list[3]:
print("You Won!")
else:
print("You Lost!")
当random.choice是列表中的剪刀时,我想打印“You Won”。
你应该得到这个错误IndexError:列表索引超出范围,因为my_list总共有3个项目,
my_list [0] - >“摇滚”
my_list [1] - >“纸”
my_list [2] - “剪刀”
因此来自my_list
的random.choice的结果总是将是my_list[0
]或my_list[1]
或my_list[2]
在这行if random.choice(my_list) == my_list[3]:
检查random.choice()
的值是否等于my_list[3]
但是你的列表的第3个位置没有项目。
my_list[2]
的“剪刀”位置。所以这应该工作,
import random
my_list = ["rock", "paper", "scissor"]
rand_item = random.choice(my_list)
if rand_item == my_list[2]:
print("You Won!")
else:
print("You Lost!")