अजगर में "कल" ​​की तारीख तैयार करना


232

मुझे MMDDYYपायथन में इस प्रारूप में "कल" की तारीख खोजने की आवश्यकता है ।

उदाहरण के लिए, आज की तारीख को इस तरह दर्शाया जाएगा: 111009

मैं आज के लिए यह आसानी से कर सकता हूं लेकिन मुझे "कल" ​​के लिए स्वचालित रूप से करने में परेशानी होती है।

जवाबों:


387

उपयोग datetime.timedelta()

>>> from datetime import date, timedelta
>>> yesterday = date.today() - timedelta(days=1)
>>> yesterday.strftime('%m%d%y')
'110909'

1
यदि आप पांडा के साथ काम कर रहे हैं, तो आप इसका उपयोग कर सकते हैं:print((pd.to_datetime('Today') - pd.Timedelta('1 days')).strftime('%m%d%y'))
etna

यदि आप विकल्पों की खोज करते हैं, तो आप पेंडुलम ( pendulum.eustace.io ): pendulum.now ()। घटाना (दिन = -1) .strftime ('% m% dY y')
AFD


21

यह वही करना चाहिए जो आप चाहते हैं:

import datetime
yesterday = datetime.datetime.now() - datetime.timedelta(days = 1)
print yesterday.strftime("%m%d%y")

1
आप UTC में लोगों के लिए तारीख के बारे में अधिक परवाह क्यों करते हैं, सिस्टम की स्थानीय समय-सीमा में तारीख की तुलना में अधिक है?
जेफरी हैरिस

1
मैंने कहा कि मेरे कोड से, डेटाबेस उपयोग में आप अक्सर यूटीसी के बारे में परवाह करते हैं। यूटीसी सामान हटा दिया।
स्टेफ

7

सभी उत्तर सही हैं, लेकिन मैं इस बात का उल्लेख करना चाहता हूं कि डेल्टा नकारात्मक तर्क स्वीकार करता है

>>> from datetime import date, timedelta
>>> yesterday = date.today() + timedelta(days=-1)
>>> print(yesterday.strftime('%m%d%y')) #for python2 remove parentheses 

5

क्या मैं इसे कुछ अधिक अंतर्राष्ट्रीय बना सकता हूं और अंतर्राष्ट्रीय मानक के अनुसार तारीख को प्रारूपित कर सकता हूं और अजीब महीने-दिन-वर्ष में नहीं, जो कि अमेरिका में आम है?

from datetime import datetime, timedelta

yesterday = datetime.now() - timedelta(days=1)
yesterday.strftime('%Y-%m-%d')

सहमत हूं कि हम राज्यों में एक अजीब तारीख प्रारूप का उपयोग करते हैं, लेकिन ओपी ने विशेष रूप से उस अजीब प्रारूप का अनुरोध किया है - जो इस मामले में `% m% d% y 'है।
डेव्ल १17

@ डेव्ल 17, निष्पक्ष बिंदु। मैं इस सवाल पर ठोकर खाने वाले अमेरिका के बाहर के सभी लोगों के लिए जवाब छोड़ दूंगा।
अरविद बैरनिहेल्म

2

क्रिस द्वारा दिए गए जवाब पर विस्तार करने के लिए

यदि आप किसी विशिष्ट प्रारूप में दिनांक को एक चर में संग्रहीत करना चाहते हैं, तो यह सबसे छोटा और सबसे प्रभावी तरीका है जहाँ तक मुझे पता है

>>> from datetime import date, timedelta                   
>>> yesterday = (date.today() - timedelta(days=1)).strftime('%m%d%y')
>>> yesterday
'020817'

यदि आप इसे पूर्णांक के रूप में चाहते हैं (जो उपयोगी हो सकता है)

>>> yesterday = int((date.today() - timedelta(days=1)).strftime('%m%d%y'))
>>> yesterday
20817
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.