Выбрать случайные элементы списка без повторений

a = " Mother was cooking the dinner for two hours ".split()  
print([random.choice(a) for j in range(4)])

Это выводит случайные слова из которых получается примитивный текст. Я бы хотел, чтобы слова не повторялись. Я думал найти index всех элементов и сравнивать, если index'ы совпали, то слово не вписывать второй раз, но я не знаю как это сделать.


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

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

Есть функция sample

import random

a = " Mother was cooking the dinner for two hours ".split()
print(random.sample(a, 4))
→ Ссылка
Автор решения: Danis

Вариант с random.shuffle

random.shuffle(a)
print(a[:4])
→ Ссылка