मैं दो दिनांक के बीच का अंतर (सेकंड में) की गणना करने के कोशिश कर रहा हूँ/बार निम्नलिखित के रूप में स्वरूपित:पायथन में अलग-अलग समय क्षेत्रों में समय के बीच अंतर कैसे मिलता है?
2010-05-11 17:07:33 यूटीसी
2010-05-11 17:07:33 EDT
time1 = '2010-05-11 17:07:33 UTC'
time2 = '2010-05-11 17:07:33 EDT'
delta = time.mktime(time.strptime(time1,"%Y-%m-%d %H:%M:%S %Z"))-\
time.mktime(time.strptime(time2, "%Y-%m-%d %H:%M:%S %Z"))
समस्या मुझे मिल गया
EDT मान्यता प्राप्त नहीं है है, विशिष्ट त्रुटि है pytz दुनिया समय क्षेत्र
ValueError: time data '2010-05-11 17:07:33 EDT' does not match format '%Y-%m-%d %H:%M:%S %Z'
आप इस http://labix.org/python-dateutil लिए देख रहे हैं:
यहाँ उन्हें एक साथ उपयोग करने का एक नमूना है? यह जो भी हो रहा है उससे कहीं अधिक सरल हो सकता है। –
उत्तर के लिए धन्यवाद। लेकिन यहां तक कि pytz का उपयोग करके भी मैं स्ट्रिंग 'ईडीटी' इत्यादि को पार्स करने के लिए एक बेहतर तरीका नहीं समझ पाया और इसे पायट्ज़ के ओबीजे में परिवर्तित कर सकता हूं, टाइमज़ोन कोई 3-4 अक्षर स्ट्रिंग संक्षेप हो सकता है लेकिन pytz 'यूएस/पूर्वी' । क्या मुझे संक्षेप में 'यूएस/पूर्वी' प्रारूप में बदलने के लिए मैपिंग बनाने की आवश्यकता है? यह मेरे लिए बहुत ज्यादा लगता है। धन्यवाद, – JasonA
मैं अंत की तरह प्रविष्टियों के साथ एक पाठ फ़ाइल के निर्माण के निम्नलिखित: << EDT \t पूर्वी डेलाइट समय (उत्तरी अमेरिका) \t यूटीसी-04 >> फिर स्ट्रिंग का उपयोग प्रवेश के लिए खोज 'EDT' समय स्ट्रिंग फ़ाइल से मूल्य -04 का उपयोग करके मैं सेकंड में समय अंतर प्राप्त करने के लिए mktime() का उपयोग कर सकता हूं। मुझे अभी भी लगता है कि ऐसा करने का एक आसान तरीका होना चाहिए ... धन्यवाद, – JasonA