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

谢谢!


当前回答

对于%d,您可以使用int()将其转换为整数,然后它将自动删除前导0并变成整数。然后可以使用str()将其转换回字符串。

其他回答

虽然有点晚了,但是%-d对我来说是有效的。

datetime.now()。strftime('%B %-d, %Y')生成类似"November 5, 2014"的内容

欢呼:)

对于%d,您可以使用int()将其转换为整数,然后它将自动删除前导0并变成整数。然后可以使用str()将其转换回字符串。

我发现Django模板日期格式过滤器是快速和简单的。它去掉了前导零。如果你不介意导入Django模块,可以查看一下。

http://docs.djangoproject.com/en/dev/ref/templates/builtins/#date

from django.template.defaultfilters import date as django_date_filter
print django_date_filter(mydate, 'P, D M j, Y')    

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

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

老问题,但是%l(小写l)在strftime中对我有用:不过,这可能不适用于每个人,因为我找到的Python文档中没有列出它