Python🈶️个叫datetime的模块(包),这个模块集成了3个主要的类型:
- datatime类型: 日期和时间
- date类型: 日期
- time类型: 时间
1.认识3个主要的日期和时间类型
打开Ipython,实践中学习。
In [1]: from datetime import datetime,date,time
In [3]: dt = datetime(2020,5,15,13,58)
In [4]: dt
Out[4]: datetime.datetime(2020, 5, 15, 13, 58)
In [5]: dt.strftime('%m-%d-%y %H:%M')
Out[5]: '05-15-20 13:58'
In [6]: dt.strftime('%m-%d-%Y %H:%M')
Out[6]: '05-15-2020 13:58'
2. 日期转字符串
strftime()函数,正如其意str from time可以实现日期转字符串的功能。
- 大写的Y: 年份的全称,比如2020,2019
- 小写的Y: 年份的简称,比如20,19,表示2020年,2019年
当然这种展示方式不是我们习惯上使用的那种“年-月-日”的表达方式,strftime()可以让日期的输出结果调整为“年-月-日”的形式。
In [7]: dt.strftime('%Y-%m-%d %H:%M')
Out[7]: '2020-05-15 13:58'
3. 字符串转日期
接着上文来,把日期转字符串的结果赋值给变量s,这时s是一个字符类型的变量。
In [8]: s = dt.strftime('%Y-%m-%d %H:%M')
In [9]: s
Out[9]: '2020-05-15 13:58'
In [13]: type(s)
Out[13]: str
再将s变量转换为日期类型的变量:
In [12]: datetime.strptime(s,'%Y-%m-%d %H:%M')
Out[12]: datetime.datetime(2020, 5, 15, 13, 58)
4. 两个日期相减
两个datetime的字段相减,可以得到一个timedelta类型的变量。
In [17]: dt
Out[17]: datetime.datetime(2020, 5, 15, 13, 58)
In [19]: dt2 = dt.replace(minute=4, second=10)
In [20]: dt2
Out[20]: datetime.datetime(2020, 5, 15, 13, 4, 10)
In [21]: dt - dt2
Out[21]: datetime.timedelta(seconds=3230)
In [22]: type(dt - dt2)
Out[22]: datetime.timedelta
In [35]: (dt - dt2).total_seconds()
Out[35]: 3230.0
把timedelta变量转为秒为单位的值,调用total_seconds()方法
记得下方给我点赞支持哦👍👍👍
关注微信公众号:数据分析之家