हम समय को जिस तरह मापते हैं, वह थोड़ा उलझा हुआ है। एक मिनट में 60 सेकंड होते हैं, और एक घंटे में 60 मिनट। यह प्राचीन बैबिलोन से आया है, जहाँ लोग अपनी संख्या प्रणाली का आधार 60 रखते थे। एक दिन में 24 घंटे होते हैं, एक सप्ताह में 7 दिन, और एक महीने में कितने दिन होते हैं? और महीने के दिनों की बात करें, तो वे इस पर निर्भर करते हैं कि कौन-सा महीना है, और यह भी कि आपके देश में किस तरह का कैलेंडर इस्तेमाल होता है।
क्या हो अगर हम समय के अंतराल बताने के लिए सिर्फ सेकंड इस्तेमाल करें? तब हम बड़ी संख्या में सेकंड को आसानी से समझ आने वाली मात्राओं में लिखने के लिए मीट्रिक प्रणाली के उपसर्ग लगा सकते हैं।
अगर हम कभी मंगल या किसी और ग्रह पर बस जाएँ, तो समय मापना और भी उलझा हुआ हो जाएगा। कोई "साल" कहे, तो उसका मतलब धरती का साल होगा या मंगल का?
इस अभ्यास का विचार लेखक Vernor Vinge के विज्ञान कथा उपन्यास "A Deepness in the Sky" से आया है। इसमें लेखक समय मापने के लिए मीट्रिक प्रणाली को आधार बनाते हैं।
आपका काम है किसी दी गई तारीख से एक गीगासेकंड बाद की तारीख और समय पता करना।
एक गीगासेकंड एक अरब सेकंड होता है। यानी एक के बाद नौ शून्य।
अगर आपका जन्म 24 जनवरी, 2015 को 22:00 बजे (रात 10:00:00) हुआ हो, तो 2 अक्टूबर, 2046 को 23:46:40 बजे (रात 11:46:40) आपकी उम्र एक गीगासेकंड की हो जाएगी।
कोड को लिखने से ज़्यादा पढ़ा जाता है, और दूसरे टेक्स्ट के बीच किसी बड़ी या लंबी संख्या को पढ़ना मुश्किल हो सकता है। संख्याओं को और आसानी से पढ़ने लायक बनाने के दो तरीके ये हैं:
न्यूमेरिक लिटरल में अंडरस्कोर का इस्तेमाल। 1_000_000, 1000000 से ज़्यादा पढ़ने लायक है, और 10_100_201_330 पर नज़र डालना 10100201330 से आसान है। अधिक जानकारी के लिए PEP-0515 देखिए।
एक्सपोनेंशियल नोटेशन या साइंटिफिक नोटेशन का इस्तेमाल। e (या E) अक्षर के बाद आने वाला पूर्णांक उस 10 की घात को बताता है जिससे e से पहले लिखी गई संख्या को गुणा किया जाना चाहिए (यानी: 1e6 में 1 को 10 की घात 6 से गुणा किया जाता है, जिसका मान 1000000 होता है)। अधिक जानकारी के लिए साइंटिफिक नोटेशन पर यह संदर्भ देखिए।
इस अभ्यास में हम Python के datetime मॉड्यूल के ऑब्जेक्ट के बारे में जानेंगे:
Exercism पर साइन अप कीजिए और Python को 17 कॉन्सेप्ट146 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।