我正在尝试使用python获取上个月的日期。这是我尝试过的:
str( time.strftime('%Y') ) + str( int(time.strftime('%m'))-1 )
但是,这种方法很糟糕,原因有两个:首先,它返回2012年2月的20122(而不是201202),其次它将返回0而不是1月的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)
我没有测试过此代码,也不想使用它(除非我找不到其他方法:/)
谢谢你的帮助!