Я пытаюсь написать программу, которая выводит список вопросов для теста. То, что я пытаюсь сделать, заключается в том, чтобы избежать добавления дубликатов в список таким образом, когда я печатаю список, у меня есть только определенное количество уникальных элементов.Как я могу избежать назначения повторяющихся элементов в список в Python?
def pick_questions(input_list, number_of_picks):
"""Picks random elements of an input list given the number of picks"""
selected_strings = []
for index in range(0, number_of_picks + 1):
random_index = randint(0, len(input_list) - 1)
if input_list[random_index] not in selected_strings:
selected_strings.append(input_list[random_index])
random_index = randint(0, len(input_list) - 1)
return selected_strings
Используйте [set] (https://docs.python.org/2/library/stdtypes.html#set). –
@kanayamalakar, should _not_ быть отступом – Holloway
'для индекса в диапазоне (0, number_of_picks + 1):' не хочет, чтобы вы хотели, он дает вам цифры '0, 1, ..., npicks', то есть вы будете у вас есть «npicks + 1» из вашего входного списка. – gboffi