@altinov01

Как удалить ссылку из txt после использования?

Подскажите как можно удалить ссылку из .txt после использования. Is_img.txt - тут хранятся ссылки на картинки.

with open ('ls_img.txt') as file
                             
      lines = file.readlines()
                       
      random_line = random.choice(lines)
                                    
      await message.answer_photo(random_line)
       
      lines.removeat(random_line)
  • Вопрос задан
  • 87 просмотров
Пригласить эксперта
Ответы на вопрос 2
Vindicar
@Vindicar
RTFM!
Вместо random.choice() делаешь index = random.randrange(0, len(lines))
Тогда у тебя не только будет random_line = lines[index], но и возможность сделать del lines[index] чтобы удалить эту строку. Однако удаление произойдёт только в твоём списке в памяти - тебе нужно будет записать список обратно. Открываешь файл для записи в текстовом режиме, и используешь метод writelines().
Ответ написан
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
Нельзя просто так взять и что-то удалить из файла.
Нужно старое содержимое записать в новый файл, а после этого старый файл переименовать в .bak например, а новый файл создать с таким же именем.

Ну, или делать mmap, и уже после редактирования, исправлять размер файла.

Или использовать модуль fileinput -https://www.tutorialspoint.com/inplace-editing-usi...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы