2017-07-21 17 views
5

मेरे पास डेटाटाइम स्टैंप है (उदा। time(6,30)) जो 06:30:00 बजे वापस आएगा। मैं सोच रहा था कि मैं इसे 6.5 घंटे में कैसे परिवर्तित कर सकता हूं।डेटाटाइम को घंटों की संख्या में कनवर्ट करें?

तरह का संबंध

उत्तर

2

आप बस का उपयोग कर सकते हैं:

import datetime 

the_time = datetime.time(6,30) 
value = the_time.hour + the_time.minute/60.0 

आप सेकंड के खाते में एक multiseconds लेने के लिए के रूप में अच्छी तरह से चाहते हैं, आप उपयोग कर सकते हैं:

import datetime 

the_time = datetime.time(6,30) 
value = the_time.hour + the_time.minute/60.0 + \ 
      the_time.second/3600.0 + the_time.microsecond/3600000000.0 

दोनों यहाँ उत्पन्न:

>>> the_time.hour + the_time.minute/60.0 
6.5 
>>> the_time.hour + the_time.minute/60.0 + \ 
...    the_time.second/3600.0 + the_time.microsecond/3600000000.0 
6.5 

या यदि आप 'hrs' प्रत्यय के साथ यह प्रिंट करना चाहते हैं:

import datetime 

the_time = datetime.time(6,30) 
print('{} hrs'.format(the_time.hour + the_time.minute/60.0)) 

यह प्रिंट होगा:

>>> print('{} hrs'.format(the_time.hour + the_time.minute/60.0)) 
6.5 hrs 
1

यह मानते हुए कि आप गुजर चुकी समय 6.5 घंटे मतलब है, कि एक timedelta होगा। time ऑब्जेक्ट 24-घंटे की घड़ी के समय-समय पर होता है। ये अलग-अलग अवधारणाएं हैं, और मिश्रित नहीं होनी चाहिए।

आपको समय-समय पर "मध्यरात्रि से समय बीतने" के रूप में भी नहीं सोचना चाहिए, क्योंकि कुछ दिनों में डेलाइट सेविंग टाइम संक्रमण शामिल हैं, जो इस मूल्य को बढ़ा या घटा सकता है। उदाहरण के लिए, संयुक्त राज्य अमेरिका के अधिकांश स्थानों के लिए, 2017-11-05 को आपने 06:30:00 को दिए गए समय में 7.5 घंटे मध्यरात्रि के बाद से समाप्त हो गया था, क्योंकि पतन-वापसी संक्रमण के लिए 1 और 2 दोहराव के बीच का समय था।

तो आपके प्रश्न का उत्तर है - नहीं।

संबंधित मुद्दे