我正在尝试用python获取上个月的日期。下面是我尝试过的:
str( time.strftime('%Y') ) + str( int(time.strftime('%m'))-1 )
然而,这种方式很糟糕,原因有两个:第一,它在2012年2月返回20122 (而不是201202);第二,它在1月份返回0而不是12。
我已经用bash解决了这个问题。
echo $(date -d"3 month ago" "+%G%m%d")
我认为,如果bash具有实现此目的的内置方法,那么装备更强大的python应该提供比强迫编写自己的脚本来实现此目标更好的东西。当然,我可以这样做:
if int(time.strftime('%m')) == 1:
return '12'
else:
if int(time.strftime('%m')) < 10:
return '0'+str(time.strftime('%m')-1)
else:
return str(time.strftime('%m') -1)
我还没有测试过这段代码,而且我也不想使用它(除非我找不到其他方法:/)
谢谢你的帮忙!
https://stackoverflow.com/questions/9724906
复制相似问题