Я пытаюсь записать файл, который еще не существует с помощью диспетчера контекстов файлов.
a=open ('C:/c.txt' , 'w')
Вышеприведенное не выполняется. Как создать файл для записи, если он уже существует?
Я пытаюсь записать файл, который еще не существует с помощью диспетчера контекстов файлов.
a=open ('C:/c.txt' , 'w')
Вышеприведенное не выполняется. Как создать файл для записи, если он уже существует?
Да, 'w'
указывается как создание нового файла - docs поместить его,
'w' для записи (обрезание файла если он уже существует),
(ясно, что это допускает, что он еще не существует). Пожалуйста, покажите точную трассировку, а не только свое собственное резюме, поскольку детали важны - например. если фактический путь, который вы используете, отличается, то, что может отсутствовать, может быть диск или какой-либо промежуточный каталог; или могут возникнуть проблемы с разрешением.
[Отредактировано, чтобы отразить, что проблема, скорее всего, не является прямой или обратной косой чертой)
Если я правильно понял, вы хотите, чтобы файл был автоматически создан для вас, правильно?
открыть в режиме записи создает файл для вас. Было бы более ясно, если бы вы сказали нам точную ошибку, которую вы получаете. Возможно, это похоже на то, что у вас нет разрешения писать на C:.
Ранее я предположил, что это может быть из-за косой черты, и указал, что OP может попробовать:
a = open(r'C:\c.txt', 'w')
Обратите внимание на r перед файловым путем, указывая на необработанный режим (т.е. обратная косая черта не будет интерпретироваться как специальная).
Однако, как указал Брайан Нил (как и другие, комментируя в другом месте), это скорее всего не причина ошибки. Я держу его здесь просто для исторических целей.
Скорее всего, вы пытаетесь писать в каталог, который не существует, или тот, на который у вас нет прав на запись.
Если вы хотите написать C:\foo\bar\foobar.txt
, убедитесь, что у вас есть C:\foo\bar\
, который существует (и в случае, если разрешения работают в Windows, убедитесь, что у вас есть разрешение на запись там).
Теперь, когда вы открываете файл в режиме записи, должен быть создан файл.
Если вы спрашиваете, как быть предупрежденным, когда файл не существует, вам необходимо явно проверить это.
Смотрите здесь