代码改变世界

datetime处理日期和时间

2017-10-01 11:47  095罗其婷  阅读(211)  评论(0)    收藏  举报

1、datetime.now() # 获取当前datetime datetime.utcnow()

 

from datetime import datetime
now=datetime.now()
print(now)
now=datetime.utcnow()
print(now)

运行结果:

2017-10-01 10:46:24.567769
2017-10-01 02:46:24.583369
>>>

 

2、datetime(2017, 5, 23, 12, 20) # 用指定日期时间创建datetime

 

dt=datetime(2017,5,23,12,20)
print(dt)

运行结果:

2017-10-01 10:48:00.663938
2017-10-01 02:48:00.679538
2017-05-23 12:20:00
>>> 

 

3、将以下字符串转换成datetime类型:

  1、'2017/9/30' '2017年9月30日星期六' '2017年9月30日星期六8时42分24秒' '9/30/2017' '9/30/2017 8:42:50 '

d1=datetime.strptime('2017/9/30','%Y/%m/%d')
print(d1)

d2=datetime.strptime('2017年9月30日星期六','%Y年%m月%d日星期六')
print(d2)

d3=datetime.strptime('2017年9月30日星期六8时42分24秒','%Y年%m月%d日星期六%H时%M分%S秒')
print(d3)

d4=datetime.strptime('9/30/2017','%m/%d/%Y')
print(d4)

d5=datetime.strptime('9/30/2017 8:42:50','%m/%d/%Y %H:%M:%S')
print(d5)

运行结果:

 RESTART: C:/Users/Administrator/AppData/Local/Programs/Python/Python36/ll.py 
2017-10-01 11:01:46.934989
2017-10-01 03:01:46.950589
2017-05-23 12:20:00
2017-09-30 00:00:00
2017-09-30 00:00:00
2017-09-30 08:42:24
2017-09-30 00:00:00
2017-09-30 08:42:50
>>> 
 RESTART: C:/Users/Administrator/AppData/Local/Programs/Python/Python36/ll.py 
2017-10-01 11:01:46.934989
2017-10-01 03:01:46.950589
2017-05-23 12:20:00
2017-09-30 00:00:00
2017-09-30 00:00:00
2017-09-30 08:42:24
2017-09-30 00:00:00
2017-09-30 08:42:50
>>> 

 

4、将以下datetime类型转换成字符串:

     1、2017年9月28日星期4,10时3分43秒 Saturday, September 30, 2017 9/30/2017 9:22:17 AM September 30, 2017

dt=datetime(2017,9,28,10,3,43)
print(dt.strftime('%Y年%m月%d日%A%H时%M分%S秒'))

dt=datetime(2017,9,28)
print(dt.strftime('%A,%B %d,%Y'))

dt=datetime(2017,9,30,9,22,17)
print(dt.strftime('%m/%d/%Y %I:%M:%S%p'))

dt=datetime(2017,9,30)
print(dt.strftime('%B %d,%Y'))

运行结果:

2017年09月28日Thursday10时03分43秒
Thursday,September 28,2017
09/30/2017 09:22:17AM
September 30,2017
>>> 

 

5、用系统时间输出以下字符串:

  • 今天是2017年9月30日 今天是这周的第?天 今天是今年的第?天 今周是今年的第?周 今天是当月的第?天
dt=datetime(2017,9,30)
print('今天是{0:%Y}年{0:%m}月{0:%d}日'.format(dt))
print(dt.strftime('今天是这周的第%w天'))
print(dt.strftime('今天是今年的第%j天 '))
print(dt.strftime('今周是今年的第%W周 '))
print(dt.strftime('今天是当月的第%d天 '))

运行结果:

今天是2017年09月30日
今天是这周的第6天
今天是今年的第273天 
今周是今年的第39周 
今天是当月的第30天 
>>>