当使用Python strftime时,是否有一种方法可以删除日期的第一个0,如果它在10号之前,即。01 = 1?找不到一个%的东西吗?

谢谢!


当前回答

我迟到了,但是一个简单的列表切片就可以完成工作

today_date = date.today().strftime('%d %b %Y')
if today_date[0] == '0':
    today_date = today_date[1:]

其他回答

看一看-下面:

>>> from datetime import datetime
>>> datetime.now().strftime('%d-%b-%Y')
>>> '08-Oct-2011'
>>> datetime.now().strftime('%-d-%b-%Y')
>>> '8-Oct-2011'
>>> today = datetime.date.today()
>>> today.strftime('%d-%b-%Y')
>>> print(today)

有点棘手,但对我来说很管用

例:从2021-02-01T00:00:00.000Z到2021-02-1

from datetime import datetime

dateObj = datetime.strptime('2021-02-01T00:00:00.000Z','%Y-%m-%dT%H:%M:%S.%fZ')
dateObj.strftime('%Y-%m-{}').format(dateObj.day)

在Windows上,添加一个“#”,如“% % # # m / d / Y % % #我:% m: % S % p '

参考:https://msdn.microsoft.com/en-us/library/fe06s4ak.aspx

例如,使用“%-d”即使在相同操作系统的不同版本之间也不能移植。 更好的解决方案是分别提取日期组件,并在特定于日期的格式化操作符和每个组件的日期属性访问之间进行选择。

e = datetime.date(2014, 1, 6)
"{date:%A} {date.day} {date:%B}{date.year}".format(date=e)

我迟到了,但是一个简单的列表切片就可以完成工作

today_date = date.today().strftime('%d %b %Y')
if today_date[0] == '0':
    today_date = today_date[1:]