IIUC, Вы можете использовать while
вместе с оператором if
, который вы первоначально пытались:
import random
lis = []
while len(lis) < 5:
x = random.randint(1,9)
if x not in lis:
lis.append(x)
>>> lis
[2, 8, 1, 5, 3]
Но если вы хотите быть хитрым, вы можете сделать:
x = list(range(1,10))
random.shuffle(x)
>>> x[:5]
[2, 1, 4, 3, 7]
Или
import numpy as np
>>> np.random.choice(range(1,10),5,replace=False)
array([7, 5, 3, 6, 4])