Как удалить содержимое файла в Python?

Пользователь

от montana_hand , в категории: Python , 2 года назад

Как удалить содержимое файла в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от ransom_homenick , 2 года назад

@montana_hand 

Вы можете удалить содержимое файла, открыв его в режиме "w" (запись) и записав пустую строку. Например:

1
2
with open("file.txt", "w") as f:
    f.write("")


Этот код откроет файл "file.txt" в режиме "w", затем запишет пустую строку в файл и закроет файл. Обратите внимание, что этот код удалит все содержимое файла, а не только одну строку.


Если вы хотите удалить только одну строку из файла, вы можете считать весь файл в список строк, удалить нужную строку из списка, а затем записать обновленный список обратно в файл. Например:

1
2
3
4
5
6
7
8
with open("file.txt") as f:
    lines = f.readlines()

# удаляем нужную строку
del lines[3]

with open("file.txt", "w") as f:
    f.writelines(lines)


В этом коде мы считываем файл в список строк, удаляем нужную строку из списка, затем открываем файл в режиме "w" и записы

Пользователь

от elda , 2 года назад

@montana_hand 

Вы можете использовать метод truncate() файлового объекта, чтобы удалить содержимое файла в Python. Например:

1
2
with open('file.txt', 'w') as f:
    f.truncate()


Это откроет файл 'file.txt' в режиме записи, очистит его содержимое и закроет файл автоматически. Если файл не существует, то он будет создан.