当[1,2]出现时如何停止。这是“ break”的错误吗?

1 python

我想打印2个随机数字,除非数字是[1, 2]。但是,即使[1, 2]出现,我尝试的代码也不会停止。

我尝试了3种类型的while循环,但是它们都有类似的问题。

import random
count == 0
while count == 0:
    print(random.sample(range(1, 7), 2))
    if random.sample(range(1, 7), 2) == [1, 2]:
        break

while random.sample(range(1, 7), 2) != [1, 2, 3]:
    print(random.import(range(1, 7), 2))

while 1:
    print(random.sample(range(1, 7), 2))
    if random.sample(range(1, 7), 2) == [1, 2]:
        break
Run Code Online (Sandbox Code Playgroud)

我想在出现[1,2]时停止。

Kos*_*dis 5

if声明中的评估与您要印刷的评估完全不同。

print(random.sample(range(1, 7), 2))  # this prints 2 numbers
if random.sample(range(1, 7), 2) == [1, 2]:  # but thhis calls random again and gets a 2 totally different numbers.
Run Code Online (Sandbox Code Playgroud)

您需要将数字分配给变量,然后使用 [1, 2]

试试这个(也可以同时更改您的时间,不需要计数器):

import random

while True:
    nums = random.sample(range(1, 7), 2)
    print(nums)
    if nums == [1, 2]:
        break
Run Code Online (Sandbox Code Playgroud)