有没有比以下更好的方法以YYYY-MM-DD格式返回今天的日期?

str(datetime.datetime.today()).split()[0]

当前回答

如果您需要太平洋标准时间(PST),您可以

from datetime import datetime
import pytz

tz = pytz.timezone('US/Pacific')
datetime.now(tz).strftime('%Y-%m-%d %H:%M:%S')
# '2021-09-02 10:21:41'

其他回答

使用strftime:

>>> from datetime import datetime
>>> datetime.today().strftime('%Y-%m-%d')
'2021-01-26'

还要在末尾加上零填充的小时:分钟:秒:

>>> datetime.today().strftime('%Y-%m-%d %H:%M:%S')
'2021-01-26 16:50:03'

要获取UTC日期和时间:

>>> datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S')
'2021-01-27 00:50:03'

我的代码有点复杂,但我经常使用它

strftime("%y_%m_%d", localtime(time.time()))

引用:'https://strftime.org/

你可以查看参考资料来制作任何你想要的东西YYYY-MM-DD只需将我的代码更改为:

strftime("%Y-%m-%d", localtime(time.time()))

很晚才回答,但您可以简单地使用:

import time
today = time.strftime("%Y-%m-%d")
# 2023-02-08

您可以使用datetime.date.today()将生成的datetime.date对象转换为字符串:

from datetime import date
today = str(date.today())
print(today)   # '2017-12-26'
from datetime import datetime

date = datetime.today().date()

print(date)