saundy 发表于 2017-4-28 10:58:41

Python 学习入门(10)—— 时间

  Python格式化日期时间的函数为datetime.datetime.strftime();由字符串转为日期型的函数为:datetime.datetime.strptime(),两个函数都涉及日期时间的格式化字符串,列举如下:

%aAbbreviated weekday name
%AFull weekday name
%bAbbreviated month name
%BFull month name
%cDate and time representation appropriate for locale
%d Day of month as decimal number (01 - 31)
%HHour in 24-hour format (00 - 23)
%IHour in 12-hour format (01 - 12)
%jDay of year as decimal number (001 - 366)
%mMonth as decimal number (01 - 12)
%MMinute as decimal number (00 - 59)
%pCurrent locale's A.M./P.M. indicator for 12-hour clock
%SSecond as decimal number (00 - 59)
%UWeek of year as decimal number, with Sunday as first day of week (00 - 51)
%wWeekday as decimal number (0 - 6; Sunday is 0)
%WWeek of year as decimal number, with Monday as first day of week (00 - 51)
%xDate representation for current locale
%XTime representation for current locale
%yYear without century, as decimal number (00 - 99)
%Y Year with century, as decimal number
%z, %ZTime-zone name or abbreviation; no characters if time zone is unknown
%%Percent sign

  

  示例:

#!/usr/bin/python
# it-homer in 2013
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
import datetime
def format_time():
t = datetime.datetime.now()
print(t)       # 2013-11-20 09:36:51.198680
t = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
print(t)       # 2013-11-20 09:39:16
t = datetime.datetime.now().strftime('%b-%d-%y %H:%M:%S')
print(t)       # Nov-20-13 09:36:51
t = datetime.datetime.now().strftime('%b-%d-%Y %H:%M:%S')
print(t)       # Nov-20-2013 09:36:51
# weekday
t = datetime.datetime.now().strftime('%a %A %U %W %w')
print(t)      # Wed Wednesday 46 46 3
# month
t = datetime.datetime.now().strftime('%b %B')
print(t)       # Nov November
# day
t = datetime.datetime.now().strftime('%d %j')
print(t)       # 20 324
# date and time for locale
t = datetime.datetime.now().strftime('%c')
print(t)       # Wed Nov 20 10:15:49 2013
# hour
t = datetime.datetime.now().strftime('%H %l')
print(t)       # 10 10
# A.M/P.M
t = datetime.datetime.now().strftime('%p')
print(t)       # AM
t = datetime.datetime.now().strftime('%x')
print(t)       # 11/20/13
t = datetime.datetime.now().strftime('%X')
print(t)       # 10:23:36
t = datetime.datetime.now().strftime('%x %X')
print(t)       # 11/20/13 10:24:47
t = datetime.datetime.now().strftime('%z')
print(t)       #
t = datetime.datetime.now().strftime('%Z')
print(t)       #

# 字符串转换成datetime
t = datetime.datetime.strptime('Nov-20-13 09:42', '%b-%d-%y %H:%M')
print(t)      # 2013-11-20 09:42:00
t = datetime.datetime(2013, 11, 20, 9, 42)
print(t)      # 2013-11-20 09:42:00
# datetime转换成字符串
t = datetime.datetime.now().strftime('%b-%d-%y %H:%M:%S')
print(t)      # Nov-20-13 10:26:40

if __name__ == "__main__":
format_time()
  


运行结果:  2013-11-20 10:29:26.456640
2013-11-20 10:29:26
Nov-20-13 10:29:26
Nov-20-2013 10:29:26
Wed Wednesday 46 46 3
Nov November
20 324
Wed Nov 20 10:29:26 2013
10 10
AM
11/20/13
10:29:26
11/20/13 10:29:26


2013-11-20 09:42:00
2013-11-20 09:42:00
Nov-20-13 10:29:26
页: [1]
查看完整版本: Python 学习入门(10)—— 时间