2012-04-21 13 views
21
import time 
t = time.ctime() 

इस समय मेरे लिए, t'Sat Apr 21 11:58:02 2012' है। मेरे पास इस तरह का अधिक डेटा है।पायथन में `ctime` से` datetime` को कैसे परिवर्तित करें?

मेरा प्रश्न है:

  • कैसे पायथन में datetime को t कन्वर्ट करने के लिए? क्या इसमें कोई मॉड्यूल है?

मैं एक समय dict और फिर t कनवर्ट करते हैं, लेकिन लगता है कि अजगर में यह करने के लिए सबसे अच्छा तरीका नहीं है की तरह की कोशिश की।

विवरण:

  • मैं एक ctime सूची (['Sat Apr 21 11:56:48 2012', 'Sat Apr 21 11:56:48 2012'] की तरह) है।
  • मैं सामग्री को datetime में परिवर्तित करना चाहता हूं, फिर में timestamp के साथ स्टोर करना चाहता हूं।
+2

क्यों सिर्फ datetime आयात से '' ऐसा नहीं datetime.now datetime'() ' – jamylak

+0

वास्तव में, मेरे पास एक स्ट्रिंग है: 'शनि अप्रैल 21 11:58:02 2012', और मैं इसे डेटाटाइम में बदलना चाहता हूं। – flreey

+0

इस तरह के तारों से कनवर्ट करना आदर्श से कम है, लेकिन इस सवाल को यह जवाब मिलता है। –

उत्तर

24

आप strptime उपयोग करना चाहिए: इस समारोह एक स्ट्रिंग एक प्रारूप के अनुसार एक समय का प्रतिनिधित्व पार्स करता है। वापसी मूल्य एक struct_time है।

प्रारूप पैरामीटर %a %b %d %H:%M:%S %Y पर डिफ़ॉल्ट है जो ctime() द्वारा स्वरूपित स्वरूपण से मेल खाता है।

तो अपने मामले में सिर्फ निम्न पंक्ति है, क्योंकि डिफ़ॉल्ट प्रारूप ctime से एक है कोशिश:

import datetime 
import time 

datetime.datetime.strptime(time.ctime(), "%a %b %d %H:%M:%S %Y") 
+0

मैं घंटों तक इस तरह से प्रयास करता हूं, लेकिन अभी भी 'शनि अप्रैल 21 11: 58:02 2012 'सही ढंग से डेटाटाइम करने के लिए। – flreey

+0

@flreey बस इसे ठीक कर दिया है, यह अभी ठीक काम करना चाहिए। –

+0

धन्यवाद, यह मेरी गलती है, मैंने गलत पैरामीटर डाला। डेटाटाइमस्ट्रैम (time.ctime(), '% a% b% d% एच:% एम:% एस% वाई') काम करता है – flreey

2

datetime.strptime() आज़माएं।

देखें:http://docs.python.org/library/datetime.html#datetime.datetime.strptime

+0

मैंने strptime कोशिश की है, लेकिन यह सही ढंग से काम नहीं कर सकता है। तो मैं यहां प्रश्न पूछता हूं – flreey

+0

आपका क्या मतलब है कि यह सही तरीके से काम नहीं कर सकता है? – zognortz

+0

मेरा मतलब है कि मैं उस विधि का उपयोग करके डेटाटाइम 'शनि अप्रैल 21 11:58:02 2012' को परिवर्तित नहीं कर सकता। – flreey

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