列表元素的Python组合

列表元素的Python组合,python,Python,我有以下代码: from random import randint Roll=[] for i in range(3): zari=randint(1,6) Roll.append(zari) for b in Roll: 上述代码有缺陷。 我想让我的代码做的是,如果在名单中是4,5,6到打印('Player won')的数字组合,但我有点迷路了 有什么建议吗? 如果数字的组合为4,5,6,则玩家获胜,如果组合为1,2,3,则玩家失败。这是我设法编写的代码,但我无法理解其余

我有以下代码:

from random import randint 
Roll=[]
for i in range(3):
    zari=randint(1,6)
    Roll.append(zari)
for b in Roll:
上述代码有缺陷。
我想让我的代码做的是,如果在名单中是4,5,6到打印('Player won')的数字组合,但我有点迷路了
有什么建议吗?

如果数字的组合为4,5,6,则玩家获胜,如果组合为1,2,3,则玩家失败。这是我设法编写的代码,但我无法理解其余的代码
我还忘了提到,如果组合是2个相同的数字,然后是数字6,例如2,2,6,则玩家获胜。对此有什么想法吗?

感谢您的每一个回答

如果我理解正确,您希望在任何给定时间检查
滚动
是否包含4、5和6。在这种情况下,只需执行以下操作:
4在Roll中,5在Roll中,6在Roll中
,这将返回一个布尔值

请将结果(Roll)与集合{4,5,6}进行比较:

if set(Roll)=={4,5,6}:
    print('Player won')
完整代码:

from random import randint 
Roll=[]
for i in range(3):
    zari=randint(1,6)
    Roll.append(zari)
if set(Roll)=={4,5,6}:
    print('Player won')
这是一个叫做“游戏”的游戏

查看我的代码:

from random import randint

while(True):
    Roll=[]
    for i in range(3):
        zari=randint(1,6)
        Roll.append(zari)
    if set(Roll)=={4,5,6}:
        print('Player won');   break
    elif set(Roll)=={1,2,3}:
        print('Player lose');  break
# If Roll has two same values, set() will remove duplicate value
    elif len(set(Roll))==2 and 6 in Roll:
        print('Player won',Roll);   break
    else:
        print('Rolling the dice again')

你能举一些赢/输的例子吗。另外,发布您尝试的无效内容,以及原因。
if all(范围(4,7)中的x代表x):print(“Player won”)
变量名应该较低(\u case\u加下划线),因此“Roll”应该称为“Roll”。PEP-8标准。请不要通过破坏您的帖子为其他人做更多的工作。通过在Stack Exchange网络上发布,您已根据授予Stack Exchange分发该内容的不可撤销权利(即,无论您未来的选择如何)。根据堆栈交换策略,帖子的非破坏版本是分发的版本。因此,任何故意破坏行为都将恢复原状。如果您想了解有关删除帖子的更多信息,请参阅: