我试图使用IF语句中的列表中随机选择的项目,即使我将其赔率设置为100%出现的时间(Newchoice),我的程序也无法识别odds = [100, 0, 0]变量

这是我当前的代码:

import random

Subjects = ["Retro", "Technology", "Sport"]
odds = [100, 0, 0]

Newchoice = random.choices(Subjects, odds, k=1)
print(Newchoice)

if Newchoice == "Retro":
    print("Success")


我希望输出显示:

['Retro']
Success


但是我得到的只是:

['Retro']

最佳答案

random.choices返回一个列表,因此NewChoice引用一个列表(包含字符串“ Retro”),但是您正在将其与字符串“ Retro”进行比较。

您可以进行列表比较:

if Newchoice == ["Retro"]:


或通过获取第一个(且仅作为k=1)元素进行字符串比较:

if Newchoice[0] == "Retro":

10-06 06:22