Задать вопрос

Как лучше создать пустой файл в Python 3?

Способ 1
with open('textfile_1.txt', 'tw', encoding='utf-8') as f:
    pass

Способ 2
open('textfile_2.txt', 'tw', encoding='utf-8')
Способ 3
f = open('textfile_3.txt', 'tw', encoding='utf-8')
f.close()

Какой способ лучше и почему? Какие еще есть способы?

Особенно интересует описание работы второго способа. Функция open создаст файловый объект, но т. к. он никуда не сохранен, интерпретатор его удалит? Т. е. тогда файл будет сразу доступен для чтения/редактирования/удаления, но уже другой команде/программе?

Python 3.4, Windows 8.1
  • Вопрос задан
  • 48211 просмотров
Подписаться 7 Оценить 2 комментария
Решения вопроса 1
@xandox
я бы предложил такой вариант
open(..).close()
и файл закрываться, и в одну строчку и без грамозких конструкций.
что касается ошибок - то все варианты в этом плане одинаковы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
yttrium
@yttrium
Контексты больше соответствуют zen и к томуже гарантируют закрытость файла при возникновении ошибки. (это первый способ)
Ответ написан
@BSergius
with open(storage_path, 'w') as f:
    ...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы