datetime
是模块,datetime
模块还包含一个datetime
类,通过from datetime import datetime
导入的才是datetime
这个类。
strptime():str-parse-time # string to datetime
strftime():str-format-time # datetime to string
strptime():
用户输入的日期和时间是字符串,要处理日期和时间,首先必须把str转换为datetime。转换方法是通过datetime.strptime()
实现,需要一个日期和时间的格式化字符串:
>>> from datetime import datetime>>> cday = datetime.strptime('2022-3-1 18:20:20', '%Y-%m-%d %H:%M:%S')>>> print(cday)2022-03-01 18:20:20
strftime():
后台提取到datetime对象后,要把它格式化为字符串显示给用户,就需要转换为str,转换方法是通过strftime()
实现的,同样需要一个日期和时间的格式化字符串:
>>> from datetime import datetime
>>> now = datetime.now()
>>> print(now.strftime('%a, %b %d %H:%M'))
Sun, May 01 00:16
datetime加减:
对日期和时间进行加减实际上就是把datetime往后或往前计算,得到新的datetime。加减可以直接用+
和-
运算符,不过需要导入timedelta
这个类:
>>> from datetime import datetime, timedelta
>>> now = datetime.now()
>>> now
datetime.datetime(2022, 5, 1, 0, 16, 59, 248600)
>>> now + timedelta(hours=10)
datetime.datetime(2022, 5, 1, 10, 16, 59, 248600)
>>> now - timedelta(days=1)
datetime.datetime(2022, 4, 30, 0, 16, 59, 248600)
>>> now + timedelta(days=2, hours=12)
datetime.datetime(2022, 5, 3, 12, 16, 59, 248600)