如何从列表中获取特定数字?

问题描述 投票:0回答:1

我想随机化列表中的单词,如果随机单词等于剪刀我想让游戏告诉我我已经赢了但是我找不到解决方案,你能告诉我哪里做错了吗?

我试过“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”。

random python-3.7
1个回答
0
投票

你应该得到这个错误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!")
© www.soinside.com 2019 - 2024. All rights reserved.