python как задать неравенство двух рандомных чисел? assert тут не работает

r1 = random.randrange(1,6,1)
r2 = random.randrange(1,6,1)
team_home, team_away = '', ''
rr = (r1, r2)
for r in rr:
    assert r1 != r2



AssertionError:

Что делать?


Ответы (2 шт):

Автор решения: CrazyElf

Если вы хотите получить два (или сколько хотите) заведомо разных рандомных числа из определённого диапазона, предлагаю вам такой рецепт:

import random

r = list(range(1, 6))
random.shuffle(r)
r1, r2 = r[:2]
print(r1, r2)

Т.е. делаем список чисел нужного диапазона, перемешиваем его случайным образом, и берём из него нужное кол-во чисел, например, с начала списка.

assert же используется совсем не для этого, обычно его используют в тестах, чтобы проверить, что написанная вами функция работает правильно.

→ Ссылка
Автор решения: GrAnd

В модуле random есть специальная функция для этого.

r1, r2 = random.sample(range(1,6), k=2)
→ Ссылка