Python ile önceki ayın tarihini almaya çalışıyorum. İşte denediğim şey:
str( time.strftime('%Y') ) + str( int(time.strftime('%m'))-1 )
Ancak, bu yol 2 nedenden dolayı kötüdür: İlk olarak 2012 Şubat'ı için 20122'yi döndürür (201202 yerine) ve ikinci olarak Ocak'ta 12 yerine 0 döndürür.
Bu sorunu bash ile çözdüm
echo $(date -d"3 month ago" "+%G%m%d")
Bence bash'ın bu amaç için yerleşik bir yolu varsa, o zaman çok daha donanımlı olan python, bu hedefe ulaşmak için kendi komut dosyasını yazmaya zorlamaktan daha iyi bir şey sağlamalıdır. Elbette şöyle bir şey yapabilirim:
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)
Bu kodu test etmedim ve yine de kullanmak istemiyorum (başka bir yol bulamazsam: /)
Yardımınız için teşekkürler!