Python datetime标准库的使用

一、获取当前日期和时间

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

输出结果:

2017-09-19 10:51:40.034996

注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import datetime导入的才是datetime这个类。

如果仅导入import datetime,则必须引用全名datetime.datetime

datetime.now()返回当前日期和时间,其类型是datetime

二、获取指定日期和时间

要指定某个日期和时间,我们直接用参数构造一个datetime

from datetime import datetime
dt=datetime(2017,9,19,10,55)
print dt
输出结果:

2017-09-19 10:55:00
三、str转换为datetime

很多时候,用户输入的日期和时间是字符串,要处理日期和时间,首先必须把str转换为datetime。转换方法是通过datetime.strptime()实现,需要一个日期和时间的格式化字符串:

from datetime import *
cday=datetime.strptime('2017-1-1 18:20:20','%Y-%m-%d %H:%M:%S')
print cday
输出结果:

2017-01-01 18:20:20
字符串 '%Y-%m-%d %H:%M:%S'规定了日期和时间部分的格式。
注意转换后的datetime是没有时区信息的。
四、datetime转换为str

如果已经有了datetime对象,要把它格式化为字符串显示给用户,就需要转换为str,转换方法是通过strftime()实现的,同样需要一个日期和时间的格式化字符串:

from datetime import *
now=datetime.now()
print now.strftime('%a,%b %d %H:%M')

输出结果:

Tue,Sep 19 11:16
五、datetime加减
对日期和时间进行加减实际上就是把datetime往后或往前计算,得到新的datetime。加减可以直接用 +-运算符,不过需要导入 timedelta这个类:

from datetime import datetime,timedelta
now=datetime.now()
print now
print now+timedelta(hours=10)
print now-timedelta(days=1)
print now+timedelta(days=2,hours=12)
输出结果:
2017-09-19 11:22:28.720470
2017-09-19 21:22:28.720470
2017-09-18 11:22:28.720470
2017-09-21 23:22:28.720470



你可能感兴趣的:(Python零碎知识点学习)