2013-07-23 6 views
15

मैं, "YYYYMMDD"पायथन में यूटीसी दिनांक स्ट्रिंग कैसे प्राप्त करें?

के रूप में यूटीसी दिनांक स्ट्रिंग पाने के लिए अभी के लिए मैं निम्नलिखित है कोशिश कर रहा हूँ

nowTime = time.gmtime(); 
nowDate = date(nowTime.tm_year, nowTime.tm_mon, nowTime.tm_mday) 
print nowDate.strftime('%Y%m%d') 

मैं करते थे:

datetime.date.today().strftime() 

लेकिन यह मेरे दिनांक स्ट्रिंग देता है स्थानीय टीजेड

मैं यूटीसी दिनांक स्ट्रिंग कैसे प्राप्त कर सकता हूं?

+0

[? कैसे पायथन में UTC समय प्राप्त करने के लिए] (http://stackoverflow.com/questions/15940280/how-to-get-utc-time-in-python) की संभावित डुप्लिकेट यूटीसी भाग के लिए, http: स्ट्रिंग भाग के लिए //stackoverflow.com/questions/311627/how-to-print-date-in-a-regular-format-in-python। –

उत्तर

28
from datetime import datetime, timezone 
datetime.now(timezone.utc).strftime("%Y%m%d") 

या के रूप में Davidism ने कहा, यह भी काम करेगा:

from datetime import datetime 
datetime.utcnow().strftime("%Y%m%d") 

मैं, पहले दृष्टिकोण पसंद करते हैं क्योंकि यह आपको समय क्षेत्र के बारे में पता datetimes का उपयोग कर की आदत में हो जाता है - लेकिन जेएफ सेबेस्टियन ने कहा के रूप में - इसके लिए पाइथन 3.2+ की आवश्यकता है। दूसरा दृष्टिकोण 2.7 और 3.2 शाखाओं दोनों में काम करेगा।

+5

'timezone.utc' का उपयोग क्यों करें और' datetime.utcnow() '? – davidism

+2

@ डेविडिज्म - क्योंकि यह आपको tzinfo = none के साथ * naive * डेटाटाइम देता है। [इन दस्तावेज़ों] देखें (http://docs.python.org/3.3/library/datetime.html#datetime.datetime.utcnow)। हालांकि, मुझे लगता है कि ओपी सिर्फ एक स्ट्रिंग चाहता है, तो या तो यहां काम करेगा। –

+9

नोट: 'timezone.utc' केवल पायथन 3.2+ है। – jfs

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