создать имя файла с текущей датой и временем в python - PullRequest
0 голосов
/ 11 января 2020

Я использовал datedime для создания имени каталога в Python, например:

Код:

import os
from datetime import datetime

os.mkdir(f"{datetime.now()}")
os.listdir()

И когда я использую ls Команда в терминале, я получил следующий результат:

enter image description here

И когда я получил dir имена с Python:

Код:

os.listdir()

Выход:

['.gitlab-ci.yml',
 'public',
 'AUTHORS',
 '.dockerignore',
 'requirements',
 '.git',
 'Dockerfile',
 'manage.py',
 '.editorconfig',
 '2020-01-11 12:53:08.425169',
 'logs',
 '.idea',
 'branch.sh',
 'initial_media',
 'README.md',
 '__pycache__',
 'setup.cfg',
 '.gitignore',
 'venv']

Решение:

Я решил strftime() 1036 * Код:

import os
from datetime import datetime

os.mkdir(f'{datetime.now().strftime("%Y-%m-%d_%I-%M-%S_%p")}')

enter image description here


TL; DR

Почему одинарные кавычки появляются в имени dir? Это проблема с функциями datetime __str__ или __repr__?

1 Ответ

1 голос
/ 11 января 2020

Возможно, имя вашего каталога не содержит кавычки. Это просто отображается таким образом. Попробуйте добавить пробел к вашему примеру strftime и посмотрите, что произойдет:

os.mkdir(f'{datetime.now().strftime("%Y-%m-%d_%I %M-%S_%p")}')

См. Почему 'ls' внезапно переносит элементы с пробелами в одинарные кавычки?

...