Подтвердить что ты не робот

Режим записи создает новый файл, если он не существует?

Я пытаюсь записать файл, который еще не существует с помощью диспетчера контекстов файлов.

a=open ('C:/c.txt' , 'w')

Вышеприведенное не выполняется. Как создать файл для записи, если он уже существует?

4b9b3361

Ответ 1

Да, 'w' указывается как создание нового файла - docs поместить его,

'w' для записи (обрезание файла если он уже существует),

(ясно, что это допускает, что он еще не существует). Пожалуйста, покажите точную трассировку, а не только свое собственное резюме, поскольку детали важны - например. если фактический путь, который вы используете, отличается, то, что может отсутствовать, может быть диск или какой-либо промежуточный каталог; или могут возникнуть проблемы с разрешением.

Ответ 2

[Отредактировано, чтобы отразить, что проблема, скорее всего, не является прямой или обратной косой чертой)

Если я правильно понял, вы хотите, чтобы файл был автоматически создан для вас, правильно?

открыть в режиме записи создает файл для вас. Было бы более ясно, если бы вы сказали нам точную ошибку, которую вы получаете. Возможно, это похоже на то, что у вас нет разрешения писать на C:.

Ранее я предположил, что это может быть из-за косой черты, и указал, что OP может попробовать:

a = open(r'C:\c.txt', 'w')

Обратите внимание на r перед файловым путем, указывая на необработанный режим (т.е. обратная косая черта не будет интерпретироваться как специальная).

Однако, как указал Брайан Нил (как и другие, комментируя в другом месте), это скорее всего не причина ошибки. Я держу его здесь просто для исторических целей.

Ответ 3

Скорее всего, вы пытаетесь писать в каталог, который не существует, или тот, на который у вас нет прав на запись.

Если вы хотите написать C:\foo\bar\foobar.txt, убедитесь, что у вас есть C:\foo\bar\, который существует (и в случае, если разрешения работают в Windows, убедитесь, что у вас есть разрешение на запись там).

Теперь, когда вы открываете файл в режиме записи, должен быть создан файл.

Ответ 4

Если вы спрашиваете, как быть предупрежденным, когда файл не существует, вам необходимо явно проверить это.

Смотрите здесь