当使用Python strftime时,是否有一种方法可以删除日期的第一个0,如果它在10号之前,即。01 = 1?找不到一个%的东西吗?
谢谢!
当使用Python strftime时,是否有一种方法可以删除日期的第一个0,如果它在10号之前,即。01 = 1?找不到一个%的东西吗?
谢谢!
当前回答
根据http://docs.python.org/library/time.html的说法,一些平台可能支持在%和字母之间的宽度和精度规格(例如“d”表示月份的日期),但这绝对是一个不可移植的解决方案(例如,在我的Mac上不能工作;-)。也许你可以在strftime之后使用字符串替换(或RE,对于非常讨厌的格式)来补救这个问题?例如:
>>> y
(2009, 5, 7, 17, 17, 17, 3, 127, 1)
>>> time.strftime('%Y %m %d', y)
'2009 05 07'
>>> time.strftime('%Y %m %d', y).replace(' 0', ' ')
'2009 5 7'
其他回答
import datetime
now = datetime.datetime.now()
print now.strftime("%b %_d")
看一看-下面:
>>> 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)
自从python2.6以来,我们可以使用format方法来做这类事情:
>>> import datetime
>>> '{dt.year}/{dt.month}/{dt.day}'.format(dt = datetime.datetime.now())
'2013/4/19'
虽然可能超出了最初问题的范围,但对于更有趣的格式,你可以这样做:
>>> '{dt:%A} {dt:%B} {dt.day}, {dt.year}'.format(dt=datetime.datetime.now())
'Wednesday December 3, 2014'
从python3.6开始,它可以表示为内联格式化字符串:
Python 3.6.0a2 (v3.6.0a2:378893423552, Jun 13 2016, 14:44:21)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import datetime
>>> dt = datetime.datetime.now()
>>> f'{dt:%A} {dt:%B} {dt.day}, {dt.year}'
'Monday August 29, 2016'
根据http://docs.python.org/library/time.html的说法,一些平台可能支持在%和字母之间的宽度和精度规格(例如“d”表示月份的日期),但这绝对是一个不可移植的解决方案(例如,在我的Mac上不能工作;-)。也许你可以在strftime之后使用字符串替换(或RE,对于非常讨厌的格式)来补救这个问题?例如:
>>> y
(2009, 5, 7, 17, 17, 17, 3, 127, 1)
>>> time.strftime('%Y %m %d', y)
'2009 05 07'
>>> time.strftime('%Y %m %d', y).replace(' 0', ' ')
'2009 5 7'
因为Python实际上只是在您的平台上调用C语言的strftime(3)函数,所以可能有一些格式字符可以用来控制前导零;试试man strftime,看看吧。但是,正如Python手册会提醒您的那样,结果当然是不可移植的。: -)
我将尝试使用新样式的datetime对象,它具有t.year、t.month和t.day等属性,并通过%操作符的正常、强大的格式化来实现这些属性,该操作符支持前导零的控制。详情见http://docs.python.org/library/datetime.html。更好的是,如果你的Python有"".format()操作符,使用它会更现代;它也有很多数字格式选项。见:http://docs.python.org/library/string.html字符串格式化。