Как получить случайную строку из файла?

Как сделать вывод рандомной строки из файла?


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

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

Например так:

import random

with open("something.txt") as inp:
    lines = inp.readlines()

random_line = random.choice(lines).strip()

(Я предпологаю, что вывод строки random_line уже нет для вас проблема.)


Объяснение:

  • Метод readlines() читает отдельные строки файла в список (включая "\n" в конце всякой строки),
  • функция choice() выберет случайный элемент—строку из этого списка и
  • метод .strip() удалит праздные знаки с начала и конца строки, в том числе и символ конца строки "\n".

Когда бы вы хотели удалить только символ конца строки, используйте

random_line = random.choice(lines)[:-1]

вместо последней строки.

→ Ссылка