Мне интересно, что является более элегантным (если это слово подходит в данном случае) способом генерировать случайное число, пока оно не входит в набор используемых значений. Первый вариант повторяется в том смысле, что у нас есть одинаковая строка для random type
как внутри, так и снаружи while-l oop.
Второй, однако, должен добавить условный оператор для выхода из l oop. Я понимаю, что этот конкретный случай тривиален, и обе версии работают, но, на ваш взгляд, Python выглядит более элегантно?
def orchestrator(image = None):
used_values = set()
for _ in range(7):
toss = np.random.random()
if toss >= 0.5:
random_type = np.random.randint(1,7,1)[0]
while random_type in used_values:
random_type = np.random.randint(1,7,1)[0]
used_values.add(random_type)
print(random_type)
def orchestrator(image = None):
used_values = set()
for _ in range(7):
toss = np.random.random()
if toss >= 0.5:
while True:
random_type = np.random.randint(1,7,1)[0]
if random_type not in used_values:
break
used_values.add(random_type)
print(random_type)