Python. Прочитать произвольную строку из файла
Предположим, вы решили разработать продвинутого саппорт-бота. В нём будет машин лёнинга до самых краёв, так что человек почти не понадобится. К сожалению, неотложные дела отвлекли ваше внимание, и вы делегировали задачу Френку.
Прямо скажем, это было не лучшее решение. Тупая и ленивая скотина придумала, что достаточно заготовить файл с универсальными ответами на все случаи жизни, и на каждый вопрос отвечать случайной фразой:
# answers.txt
Перезагрузите ваше устройство, пожалуйста
Проверили, проблема на вашей стороне
Спасибо, займёмся этим позже
Наши технические возможности исчерпаны
Простой, надёжный алгоритм. Осталось воплотить в питоне. Здесь Френку поможет linecache.getline()
:
import linecache
import random
def get_answer():
line_num = random.randint(1, 4)
answer = linecache.getline("answers.txt", line_num)
return answer.strip()
>>> get_answer()
'Проверили, проблема на вашей стороне'
Ничего себе! Это едва ли не короче, чем hello world. К тому же, функция getline()
кеширует все строчки файла в списке, так что следующие вызовы get_answer()
отработают моментально.
Бот готов, Френк возвращается к своим семечкам.
★ Подписывайтесь на новые заметки.