Python - выбор конкретного количества слов из представленного списка

До этого спрашивал как сохранять слова в файл, странные вопросы получаются, но не суть xD

В общем, допустим у меня есть файл words.txt, и в нем есть список различных слов. Мне надо выбрать неопределенное количество рандомных слов из этого списка. Слова записаны следующим образом:

привет
как
дела
это
пример

Их конечно же побольше, но суть думаю ясна. Отсюда надо выбрать неопределенное количество, думаю через random.randint(5, 35). Как это реализовать? С циклами и всем прочим плохо знаком, поэтому даже идей нет.


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

Автор решения: Damien Damie Amfiet

Как вариант можно попробовать так:

import random

file = "FILE_PATH"
words = []
random_words = []
num = random.randint(1, 5)  # рандомное число
with open(file, "r") as f:
    for line in f:
        words.append(line)  # добавляем свои слова в список

for i in set(random.choices(words, k=num)):
    random_words.append(i)  # добавляем рандомные слова в список

newString = " ".join([line.rstrip() for line in random_words]
print(newString) # строка для отправки
→ Ссылка
Автор решения: S. Nick

Попробуйте так:

from random import randint

string = """В общем, допустим у меня есть файл
words.txt, и в нем есть список различных слов.
Мне надо выбрать неопределенное количество рандомных
слов из этого списка. Слова записаны следующим образом
"""

_list = string.split()

random_list = [ _list[randint(0, len(_list) -1) ] for _ in range(randint(1, len(_list)))  ]

print(random_list)
→ Ссылка