Python не создает файл в режиме х - PullRequest
0 голосов
/ 06 мая 2018

ну, я сделал это

    try:
        with open('add/report.txt', 'x')as f:
            pass
    except FileExistsError:
        pass
    finally:
        with open('add/report.txt', 'a')as f:
            f.write(message)
            f.write('-------------------')

и я получаю ошибку FileNotFoundError даже после того, как я попытался открыть файл в x mode, чтобы сначала создать его

1 Ответ

0 голосов
/ 06 мая 2018

Вы пытаетесь превратить файл в несуществующую папку.

Вот рабочий пример с автоматическим созданием файлов и папок:

from pathlib import Path

def send(message):

    target_file = r'c:\tmp\path\which\does\not\exist\report.txt'

    p = Path(target_file)
    if not p.exists():
        p.parent.mkdir(parents=True)


    with open(p, 'a')as f:
        f.write(message)
        f.write('-------------------')
...