python3笔记二十一:时间操作datetime和calendar

一:学习内容

  • datetime
  • calendar

二:datetime

1.模块说明:可以理解为datetime基于time进行了封装,提供了各种使用的函数,datetime模块的接口更直接,更容易调用

2.datetime模块中的类:

datetime    同时有时间和日期
timedelta   主要用于计算时间的跨度
tzinfo      时区相关
time        只关注时间
date        只关注日期

3.获取当前时间

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

4.获取指定的时间

d2 = datetime.datetime(1991, 10, 8, 10, 28, 20, 123456)
print(d2)

5.将时间(datetime.datetime类型)转为字符串

import datetime
d1 = datetime.datetime.now()

d3 = d1.strftime("%Y-%m-%d %X")
print(d3)
print(type(d3))

6.将格式化字符串转成datetime类型
import datetime
d1 = datetime.datetime.now()
d3 = d1.strftime("%Y-%m-%d %X")

#注意:转换的格式要与字符串一致
d4 = datetime.datetime.strptime(d3, "%Y-%m-%d %X")
print(d4)
print(type(d4))

7.时间间隔

d5 = datetime.datetime(1999, 10, 1, 10, 28, 20, 123456)
d6 = datetime.datetime.now()
d7 =d6 - d5
print(d7)                #7285 days, 6:23:31.611593
print(type(d7))

8.间隔的天数

d5 = datetime.datetime(1999, 10, 1, 10, 28, 20, 123456)
d6 = datetime.datetime.now()
d7 =d6 - d5
print(d7.days)

9.间隔天数除外的秒数
d5 = datetime.datetime(1999, 10, 1, 10, 28, 20, 123456)
d6 = datetime.datetime.now()
d7 =d6 - d5
print(d7)                              #7285 days, 6:26:52.858784
print(d7.seconds)               #23212,即上面的除天数外的时间6*3600+26*60+52=23212

三:calendar

1.模块说明:日历模块,需要导入包:import calendar

2.返回指定某年某月的日历

print(calendar.month(2019,11))

3.返回指定年的日历

print(calendar.calendar(2017))

4.判断闰年,是返回True,否则返回False

print(calendar.isleap(2010))

5.返回某个月的weekday的第一天和这个月所有的天数

print(calendar.monthrange(2019,8))

6.返回某个月以每一周为元素的列表
print(calendar.monthcalendar(2019,7))

原文地址:https://www.cnblogs.com/miaomiaokaixin/p/11507319.html