2010-06-20 16 views
9

संभव डुप्लिकेट:
How can I subtract a day from a python date?अजगर में पिछले कैलेंडर दिन खोजें

मैं फ़ाइलों है कि मैं दिनांक के आधार पर बचत कर रहा हूँ, year_month_day.txt प्रारूप का एक सेट है। मुझे कुछ प्रसंस्करण के लिए पिछले दिन की टेक्स्ट फ़ाइल खोलनी होगी। मैं पाइथन में पिछले दिन की तारीख कैसे पा सकता हूं?

उत्तर

19

ये रहा:

>>> print datetime.date.today()-datetime.timedelta(1) 
>>> 2010-06-19 
-1

संक्षेप में:

  1. एक नंबर करने के वर्ष/माह/दिन बदलें।
  2. उस नंबर से 1 घटाएं।
  3. संख्या को वर्ष/माह/दिन में कनवर्ट करें।

आप time मॉड्यूल सहायक से localtime और mktime कार्यों मिल जाएगा।

(इसके अलावा, सेकंड के साथ time मॉड्यूल सौदों के बाद से, आप 86400 के बजाय 1. घटाना होगा)

3

आप एक स्ट्रिंग '2010_05_1' के साथ शुरू कहो। फिर पिछले दिन के लिए समान स्ट्रिंग है:

>>> import datetime 
>>> s = '2010_05_1' 
>>> theday = datetime.date(*map(int, s.split('_'))) 
>>> prevday = theday - datetime.timedelta(days=1) 
>>> prevday.strftime('%Y_%m_%d') 
'2010_04_30' 
>>> 

बेशक आप इसे सब एक आसान काम में समाहित कर देंगे!

1

आप datetime module उपयोग कर सकते हैं।

import datetime 
print (datetime.date(year, month, day) - datetime.timedelta(1)).isoformat() 
संबंधित मुद्दे