datetime是Python处理日期和时间的标准库。

获取当前时间

  1. >>> from datetime import datetime
  2. >>> now = datetime.now() # 获取当前datetime
  3. >>> print(now)
  4. 2015-05-18 16:28:07.198690
  5. >>> print(type(now))
  6. <class 'datetime.datetime'>

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


如果仅导入import datetime,则必须引用全名datetime.datetime
datetime.now()返回当前日期和时间,其类型是datetime

获取指定时间

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

  1. >>> from datetime import datetime
  2. >>> dt = datetime(2015, 4, 19, 12, 20) # 用指定日期时间创建datetime
  3. >>> print(dt)
  4. 2015-04-19 12:20:00

str转换为datetime

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

  1. >>> from datetime import datetime
  2. >>> cday = datetime.strptime('2015-6-1 18:19:59', '%Y-%m-%d %H:%M:%S')
  3. >>> print(cday)
  4. 2015-06-01 18:19:59

datetime转换为str

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

  1. >>> from datetime import datetime
  2. >>> now = datetime.now()
  3. >>> print(now.strftime('%a, %b %d %H:%M'))
  4. Mon, May 05 16:28