पायथन 3 - तिथि और समय
एक पायथन कार्यक्रम कई तरीकों से तारीख और समय को संभाल सकता है। दिनांक प्रारूपों के बीच परिवर्तित करना कंप्यूटर के लिए एक सामान्य काम है। पायथन का समय और कैलेंडर मॉड्यूल तारीख और समय को ट्रैक करने में मदद करते हैं।
टिक क्या है
समय अंतराल सेकंड की इकाइयों में फ्लोटिंग-पॉइंट नंबर हैं। समय में विशेष रूप से उदाहरणों को 12:00 बजे, 1 जनवरी, 1970 (युग) के बाद से सेकंड में व्यक्त किया जाता है।
एक लोकप्रिय है timeपायथन में उपलब्ध मॉड्यूल जो समय के साथ काम करने के लिए और अभ्यावेदन के बीच परिवर्तित करने के लिए कार्य प्रदान करता है। कार्यक्रमtime.time() 12:00 बजे, 1 जनवरी, 1970 (युग) के बाद से टिक्स में वर्तमान प्रणाली का समय देता है।
उदाहरण
#!/usr/bin/python3
import time; # This is required to include time module.
ticks = time.time()
print ("Number of ticks since 12:00am, January 1, 1970:", ticks)
यह इस प्रकार कुछ परिणाम देगा -
Number of ticks since 12:00am, January 1, 1970: 1455508609.34375
तिथि अंकगणित टिक के साथ करना आसान है। हालाँकि, इस रूप में युग से पहले की तारीखों का प्रतिनिधित्व नहीं किया जा सकता है। सुदूर भविष्य की तारीखों का भी इस तरह प्रतिनिधित्व नहीं किया जा सकता है - कटऑफ पॉइंट 2038 में UNIX और Windows के लिए कुछ समय है।
TimeTuple क्या है?
पायथन के कई समय फ़ंक्शन 9 नंबरों के टपल के रूप में समय को संभालते हैं, जैसा कि नीचे दिखाया गया है -
सूची | मैदान | मूल्यों |
---|---|---|
0 | 4-अंक वर्ष | 2016 |
1 | महीना | 1 से 12 तक |
2 | दिन | 1 से 31 |
3 | इस घंटे | 0 से 23 |
4 | मिनट | 0 से 59 |
5 | दूसरा | 0 से 61 (60 या 61 लीप-सेकंड हैं) |
6 | सप्ताह के दिन | 0 से 6 (0 सोमवार है) |
7 | साल का दिन | 1 से 366 (जूलियन दिन) |
8 | दिन के उजाले की बचत | -1, 0, 1, -1 का मतलब है कि लाइब्रेरी डीएसटी निर्धारित करती है |
उदाहरण के लिए -
import time
print (time.localtime());
यह इस प्रकार एक परिणाम का उत्पादन होगा -
time.struct_time(tm_year = 2016, tm_mon = 2, tm_mday = 15, tm_hour = 9,
tm_min = 29, tm_sec = 2, tm_wday = 0, tm_yday = 46, tm_isdst = 0)
उपरोक्त टुपल के बराबर है struct_timeसंरचना। इस संरचना के निम्नलिखित गुण हैं -
सूची | गुण | मूल्यों |
---|---|---|
0 | tm_year | 2016 |
1 | tm_mon | 1 से 12 तक |
2 | tm_mday | 1 से 31 |
3 | tm_hour | 0 से 23 |
4 | tm_min | 0 से 59 |
5 | tm_sec | 0 से 61 (60 या 61 लीप-सेकंड हैं) |
6 | tm_wday | 0 से 6 (0 सोमवार है) |
7 | tm_yday | 1 से 366 (जूलियन दिन) |
8 | tm_isdst | -1, 0, 1, -1 का मतलब है कि लाइब्रेरी डीएसटी निर्धारित करती है |
वर्तमान समय हो रहा है
समय से सेकंड में एक समय का अनुवाद करने के लिए चूंकि टाइम-टेबल में फ़्लोटिंग-पॉइंट वैल्यू है, फ़्लोटिंग-पॉइंट वैल्यू को एक फ़ंक्शन (जैसे, स्थानीय समय) में पास करें जो सभी मान्य नौ वस्तुओं के साथ टाइम-टपल लौटाता है।
#!/usr/bin/python3
import time
localtime = time.localtime(time.time())
print ("Local current time :", localtime)
इससे निम्नलिखित परिणाम प्राप्त होंगे, जिन्हें किसी अन्य प्रस्तुत रूप में स्वरूपित किया जा सकता है -
Local current time : time.struct_time(tm_year = 2016, tm_mon = 2, tm_mday = 15,
tm_hour = 9, tm_min = 29, tm_sec = 2, tm_wday = 0, tm_yday = 46, tm_isdst = 0)
स्वरूपित समय हो रहा है
आप अपनी आवश्यकता के अनुसार किसी भी समय प्रारूपित कर सकते हैं, लेकिन एक पठनीय प्रारूप में समय प्राप्त करने की एक सरल विधि है asctime() -
#!/usr/bin/python3
import time
localtime = time.asctime( time.localtime(time.time()) )
print ("Local current time :", localtime)
यह निम्नलिखित परिणाम का उत्पादन करेगा -
Local current time : Mon Feb 15 09:34:03 2016
एक महीने के लिए कैलेंडर प्राप्त करना
कैलेंडर मॉड्यूल वार्षिक और मासिक कैलेंडर के साथ खेलने के तरीकों की एक विस्तृत श्रृंखला देता है। यहां, हम किसी दिए गए महीने के लिए एक कैलेंडर प्रिंट करते हैं (जनवरी 2008) -
#!/usr/bin/python3
import calendar
cal = calendar.month(2016, 2)
print ("Here is the calendar:")
print (cal)
यह निम्नलिखित परिणाम का उत्पादन करेगा -
Here is the calendar:
February 2016
Mo Tu We Th Fr Sa Su
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29
समय मॉड्यूल
एक लोकप्रिय है timeपायथन में उपलब्ध मॉड्यूल, जो समय के साथ काम करने और अभ्यावेदन के बीच परिवर्तित करने के लिए कार्य प्रदान करता है। यहां सभी उपलब्ध तरीकों की सूची दी गई है।
अनु क्रमांक। | समारोह विवरण |
---|---|
1 |
time.altzone
UTC के पश्चिम में स्थानीय DST टाइमज़ोन की ऑफ़सेट, यदि कोई परिभाषित किया गया है। यह नकारात्मक है अगर स्थानीय डीएसटी टाइमज़ोन यूटीसी (ब्रिटेन सहित पश्चिमी यूरोप में) के पूर्व में है। अगर दिन की रोशनी नॉनजरो है तो इसका इस्तेमाल करें। |
2 |
time.asctime ([tupletime])
एक टाइम-ट्यूपल को स्वीकार करता है और एक पठनीय 24-वर्ण स्ट्रिंग देता है जैसे कि 'Tue Dec 11 18:07:14 2008'। |
3 |
समय घड़ी( )
वर्तमान CPU समय को कुछ सेकंड की फ़्लोटिंग-पॉइंट संख्या के रूप में देता है। विभिन्न दृष्टिकोणों की कम्प्यूटेशनल लागतों को मापने के लिए time.clock का मान time.time () की तुलना में अधिक उपयोगी है। |
4 |
time.ctime ([सेकेंड])
जैसे कि ऐक्टिम (स्थानीय समय (सेकेंड)) और बिना तर्क के ऐक्टिम () के समान है |
5 |
time.gmtime ([सेकेंड])
युग के बाद से सेकंड में व्यक्त किए गए एक पल को स्वीकार करता है और यूटीसी समय के साथ एक टाइम-ट्यूपल टी लौटाता है। नोट - t.tm_isdst हमेशा 0 होता है |
6 |
time.localtime ([सेकेंड])
युग के बाद से सेकंड में व्यक्त किए गए एक पल को स्वीकार करता है और स्थानीय समय (t.tm_isdst 0 या 1 के साथ समय-टपल टी लौटाता है, यह इस बात पर निर्भर करता है कि क्या DST स्थानीय नियमों द्वारा तत्काल सेकंड पर लागू होता है)। |
7 |
time.mktime (tupletime)
स्थानीय समय में समय-टुपल के रूप में व्यक्त एक पल को स्वीकार करता है और युग के बाद सेकंड में व्यक्त तत्काल के साथ एक अस्थायी-बिंदु मान देता है। |
8 |
time.sleep (सेकंड)
सेकंड के लिए कॉलिंग थ्रेड को निलंबित करता है। |
9 |
time.strftime (fmt [, tupletime])
स्थानीय समय में टाइम-टुपल के रूप में व्यक्त तत्काल को स्वीकार करता है और स्ट्रिंग fmt द्वारा निर्दिष्ट तत्काल के रूप में एक स्ट्रिंग का प्रतिनिधित्व करता है। |
10 |
time.strptime (str, fmt = '% a% b% d% H:% M:% S% Y')
Parses स्ट्रिंग स्ट्रिंग fmt प्रारूप के अनुसार होती है और समय-समय प्रारूप में तुरंत वापस आती है। |
1 1 |
समय.समय ()
वर्तमान समय को तुरंत लौटाता है, युग के बाद से सेकंड का एक अस्थायी-बिंदु संख्या। |
12 |
time.tzset ()
लाइब्रेरी रूटीन द्वारा उपयोग किए जाने वाले समय रूपांतरण नियमों को रीसेट करता है। वातावरण चर TZ निर्दिष्ट करता है कि यह कैसे किया जाता है। |
समय मॉड्यूल के साथ दो महत्वपूर्ण विशेषताएं उपलब्ध हैं। वे हैं -
अनु क्रमांक। | विशेषता और विवरण |
---|---|
1 | time.timezone समय को सम्मिलित करें। समयक्षेत्र UTC से स्थानीय समय क्षेत्र (DST के बिना) के सेकंड्स में ऑफसेट है (> 0 अमेरिका में; <= 0 अधिकांश यूरोप, एशिया, अफ्रीका में)। |
2 | time.tzname टाईम एट्रीब्यूट ।.tname लोकल-डिपेंडेंट स्ट्रिंग्स की एक जोड़ी है, जो क्रमशः DST के बिना और उसके साथ स्थानीय टाइम ज़ोन के नाम हैं। |
कैलेंडर मॉड्यूल
कैलेंडर मॉड्यूल कैलेंडर से संबंधित कार्यों की आपूर्ति करता है, जिसमें दिए गए महीने या वर्ष के लिए पाठ कैलेंडर प्रिंट करने के लिए फ़ंक्शन भी शामिल हैं।
डिफ़ॉल्ट रूप से, कैलेंडर सप्ताह के पहले दिन के रूप में सोमवार और अंतिम के रूप में रविवार लेता है। इसे बदलने के लिए, कॉल करेंcalendar.setfirstweekday() समारोह।
यहाँ के साथ उपलब्ध कार्यों की एक सूची है calendar मॉड्यूल -
अनु क्रमांक। | समारोह विवरण |
---|---|
1 | calendar.calendar(year,w = 2,l = 1,c = 6) सी रिक्त स्थान द्वारा अलग किए गए तीन स्तंभों में स्वरूपित एक कैलेंडर वर्ष के साथ एक बहु स्ट्रिंग लौटाता है। डब्ल्यू प्रत्येक तिथि के पात्रों में चौड़ाई है; प्रत्येक पंक्ति की लंबाई 21 * w + 18 + 2 * c है। एल प्रत्येक सप्ताह के लिए लाइनों की संख्या है। |
2 | calendar.firstweekday( ) प्रत्येक सप्ताह शुरू होने वाले कार्यदिवस के लिए वर्तमान सेटिंग लौटाता है। डिफ़ॉल्ट रूप से, जब कैलेंडर पहली बार आयात किया जाता है, तो यह 0 होता है, जिसका अर्थ है सोमवार। |
3 | calendar.isleap(year) यदि वर्ष लीप वर्ष है, तो यह सच है; अन्यथा, गलत। |
4 | calendar.leapdays(y1,y2) रेंज (y1, y2) के भीतर वर्षों में लीप दिनों की कुल संख्या देता है। |
5 | calendar.month(year,month,w = 2,l = 1) साल के महीने के महीने के लिए एक कैलेंडर के साथ एक बहुस्तरीय स्ट्रिंग लौटाता है, प्रति सप्ताह एक पंक्ति और दो हेडर लाइनें। डब्ल्यू प्रत्येक तिथि के पात्रों में चौड़ाई है; प्रत्येक पंक्ति की लंबाई 7 * w + 6 है। एल प्रत्येक सप्ताह के लिए लाइनों की संख्या है। |
6 | calendar.monthcalendar(year,month) किलों की सूचियों की सूची लौटाता है। प्रत्येक सबलिस्ट एक सप्ताह को दर्शाता है। वर्ष वर्ष के महीने के बाहर दिन 0 पर सेट होते हैं; महीने के भीतर दिन उनके महीने, 1 और ऊपर के लिए निर्धारित हैं। |
7 | calendar.monthrange(year,month) दो पूर्णांक लौटाता है। पहला वर्ष वर्ष में महीने के महीने के पहले दिन के लिए कार्यदिवस का कोड है; दूसरा महीने में दिनों की संख्या है। सप्ताहांत कोड 0 (सोमवार) से 6 (रविवार) हैं; महीने की संख्या 1 से 12 है। |
8 | calendar.prcal(year,w = 2,l = 1,c = 6) प्रिंट कैलेंडर की तरह। कैलेंडर (वर्ष, w, l, c)। |
9 | calendar.prmonth(year,month,w = 2,l = 1) प्रिंट कैलेंडर की तरह। महीने (वर्ष, महीना, डब्ल्यू, एल)। |
10 | calendar.setfirstweekday(weekday) प्रत्येक सप्ताह के पहले दिन को सप्ताह के दिन के कार्यदिवस पर सेट करता है। सप्ताहांत कोड 0 (सोमवार) से 6 (रविवार) हैं। |
1 1 | calendar.timegm(tupletime) Time.gmtime का विलोम: टाइम-टुपल रूप में एक समय को तुरंत स्वीकार करता है और एक ही पल को सेकंड के बाद से एक फ्लोटिंग-पॉइंट नंबर के रूप में वापस करता है। |
12 | calendar.weekday(year,month,day) दिए गए दिनांक के लिए कार्यदिवस कोड लौटाता है। सप्ताहांत कोड 0 (सोमवार) से 6 (रविवार) हैं; महीने की संख्या 1 (जनवरी) से 12 (दिसंबर) है। |
अन्य मॉड्यूल और कार्य
यदि आप रुचि रखते हैं, तो यहां आपको पायथन में तारीख और समय के साथ खेलने के लिए अन्य महत्वपूर्ण मॉड्यूल और कार्यों की एक सूची मिलेगी -
- द डेटटाइम मॉड्यूल
- Pytz मॉड्यूल
- खजूर का मॉड्यूल