t = e['updated_parsed']
dt = datetime.datetime(t[0],t[1],t[2],t[3],t[4],t[5],t[6]
print dt
>>>2010-01-28 08:39:49.000003
ฉันจะแปลงเป็นสตริงได้อย่างไร:
"January 28, 2010"
t = e['updated_parsed']
dt = datetime.datetime(t[0],t[1],t[2],t[3],t[4],t[5],t[6]
print dt
>>>2010-01-28 08:39:49.000003
ฉันจะแปลงเป็นสตริงได้อย่างไร:
"January 28, 2010"
คำตอบ:
คลาส datetime มีเมธอด strftime เอกสาร Python เป็นเอกสารที่มีรูปแบบแตกต่างกัน
สำหรับตัวอย่างเฉพาะนี้จะมีลักษณะดังนี้:
my_datetime.strftime("%B %d, %Y")
strftime
แตกต่างระหว่าง Python 2 และ 3 หรือไม่?
นี่คือวิธีที่คุณจะประสบความสำเร็จเช่นเดียวกันโดยใช้ฟังก์ชันการจัดรูปแบบทั่วไปของงูใหญ่ ...
>>>from datetime import datetime
>>>"{:%B %d, %Y}".format(datetime.now())
การจัดรูปแบบตัวอักษรที่ใช้ที่นี่เป็นเช่นเดียวกับที่ใช้โดยstrftime อย่าพลาดผู้นำ:
ในตัวระบุรูปแบบ
การใช้รูปแบบ () แทน strftime () ในกรณีส่วนใหญ่สามารถทำให้โค้ดอ่านง่ายขึ้นง่ายต่อการเขียนและสอดคล้องกับวิธีการสร้างรูปแบบเอาท์พุท ...
>>>"{} today's date is: {:%B %d, %Y}".format("Andre", datetime.now())
เปรียบเทียบด้านบนกับ strftime ต่อไปนี้ () ทางเลือก ...
>>>"{} today's date is {}".format("Andre", datetime.now().strftime("%B %d, %Y"))
ยิ่งกว่านั้นต่อไปนี้จะไม่ทำงาน ...
>>>datetime.now().strftime("%s %B %d, %Y" % "Andre")
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
datetime.now().strftime("%s %B %d, %Y" % "Andre")
TypeError: not enough arguments for format string
และอื่น ๆ ...
print 'Today is {:%B %d, %Y}'.format(datetime.now())
print 'Today is {}'.format(datetime.now().strftime('%B %d, %Y')
เมื่อคุณใช้รูปแบบ () วิธีต่อไปทำไมไม่ใช้รูปแบบวันที่ด้วย
คำถามเก่ามากฉันรู้ แต่ด้วยf- สตริงใหม่ (เริ่มต้นจาก python 3.6) มีตัวเลือกใหม่ ดังนั้นที่นี่เพื่อความสมบูรณ์:
from datetime import datetime
dt = datetime.now()
# str.format
strg = '{:%B %d, %Y}'.format(dt)
print(strg) # July 22, 2017
# datetime.strftime
strg = dt.strftime('%B %d, %Y')
print(strg) # July 22, 2017
# f-strings in python >= 3.6
strg = f'{dt:%B %d, %Y}'
print(strg) # July 22, 2017
strftime()
และstrptime()
พฤติกรรมอธิบายความหมายของตัวระบุรูปแบบ
อ่านstrfrtimeจากเอกสารอย่างเป็นทางการ
Python datetime object มีคุณสมบัติ method ซึ่งพิมพ์ในรูปแบบที่อ่านได้
>>> a = datetime.now()
>>> a.ctime()
'Mon May 21 18:35:18 2018'
>>>
นี่เป็นรูปแบบวันที่หรือไม่
def format_date(day, month, year):
# {} betekent 'plaats hier stringvoorstelling van volgend argument'
return "{}/{}/{}".format(day, month, year)
dt = datetime.datetime(*t[:7])