时间转换python_Python 日期与时间转换的方法
问题
你需要执行简单的时间转换,比如天到秒,小时到分钟等的转换。
解决方案
为了执行不同时间单位的转换和计算,请使用 datetime 模块。 比如,为了表示一个时间段,可以创建一个 timedelta 实例,就像下面这样:
>>> from datetime import timedelta
>>> a = timedelta(days=2, hours=6)
>>> b = timedelta(hours=4.5)
>>> c = a + b
>>> c.days
2
>>> c.seconds
37800
>>> c.seconds / 3600
10.5
>>> c.total_seconds() / 3600
58.5
>>>
如果你想表示指定的日期和时间,先创建一个 datetime 实例然后使用标准的数学运算来操作它们。比如:
>>> from datetime import datetime
>>> a = datetime(2012, 9, 23)
>>> print(a + timedelta(days=10))
2012-10-03 00:00:00
>>>
>>> b = datetime(2012, 12, 21)
>>> d = b - a
>>> d.days
89
>>> now = datetime.today()
>>> print(now)
2012-12-21 14:54:43.094063
>>> print(now + timedelta(minutes=10))
2012-12-21 15:04:43.094063
>>>
在计算的时候,需要注意的是 datetime 会自动处理闰年。比如:
>>> a = datetime(2012, 3, 1)
>>> b = datetime(2012, 2, 28)
>>> a - b
datetime.timedelta(2)
>>> (a - b).days
2
>>> c = datetime(2013, 3, 1)
>>> d = datetime(2013, 2, 28)
>>> (c - d).days
1
>>>
讨论
对大多数基本的日期和时间处理问题, datetime 模块已经足够了。 如果你需要执行更加复杂的日期操作,比如处理时区,模糊时间范围,节假日计算等等, 可以考虑使用 dateutil模块
许多类似的时间计算可以使用 dateutil.relativedelta()函数代替。 但是,有一点需要注意的就是,它会在处理月份(还有它们的天数差距)的时候填充间隙。看例子最清楚:
>>> a = datetime(2012, 9, 23)
>>> a + timedelta(months=1)
Traceback (most recent call last):
File "", line 1, in
TypeError: 'months' is an invalid keyword argument for this function
>>>
>>> from dateutil.relativedelta import relativedelta
>>> a + relativedelta(months=+1)
datetime.datetime(2012, 10, 23, 0, 0)
>>> a + relativedelta(months=+4)
datetime.datetime(2013, 1, 23, 0, 0)
>>>
>>> # Time between two dates
>>> b = datetime(2012, 12, 21)
>>> d = b - a
>>> d
datetime.timedelta(89)
>>> d = relativedelta(b, a)
>>> d
relativedelta(months=+2, days=+28)
>>> d.months
2
>>> d.days
28
>>>
以上就是Python 日期与时间转换的方法的详细内容,更多关于Python 日期与时间转换的资料请关注我们其它相关文章!
本文标题: Python 日期与时间转换的方法
本文地址: http://www.cppcns.com/jiaoben/python/329557.html
时间转换python_Python 日期与时间转换的方法相关推荐
- vue中使用moment处理时间戳转换成日期或时间格式
vue中使用moment处理时间戳转换成日期或时间格式 npm i moment import moment from 'moment' <template><div>< ...
- mysql日期和时间类型_MySQL日期和时间类型
MySQL中存储日和和时间,使用日期和时间类型. 提供的包括YEAR.DATE.TIME.DATETIME和TIMESTAMP. YEAR 占用:1字节 取值范围:1901~2155 日期格式:YYY ...
- mysql 创建时间类型,MySQL日期和时间类型
搜索热词 MysqL中存储日和和时间,使用日期和时间类型. 提供的包括YEAR.DATE.TIME.DATETIME和TIMESTAMP. YEAR 占用:1字节 取值范围:1901~2155 日期格 ...
- c mysql日期时间格式_mysql 日期和时间格式转换实现语句
这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table WHERE TO_DAY ...
- php mysql 日期时间_php Mysql日期和时间函数集合
收集的比较全的Mysql日期和mysql时间函数 DATE_FORMAT(date,format) 根据format字符串格式化date值.下列修饰符可以被用在format字符串中: %M 月名字(J ...
- c mysql日期时间格式_mysql日期和时间类型
TIME 类型 TIME 类型用于只需要时间信息的值,在存储时需要 3 个字节.格式为 HH:MM:SS.HH 表示小时,MM 表示分钟,SS 表示秒. TIME 类型的取值范围为 -838:59:5 ...
- java 时间类_Java日期和时间类简介
Java 的日期和时间类位于 java.util 包中.利用日期时间类提供的方法,可以获取当前的日期和时间,创建日期和时间参数,计算和比较时间. Date 类 Date 类是 Java 中的日期时间类 ...
- c语言 时间函数,C 日期和时间函数
学习C - C日期和时间函数 time.h标头声明产生时间和日期的函数. 获取时间值 返回时间值的最简单的函数具有以下原型: clock_t clock(void); 这个函数返回一些参考点后的处理器 ...
- java获取24小时制时间格式_java 日期格式时间24小时制
按指定格式获取时间 import java.util.*; import java.text.*; public class TestDate { public static void main(St ...
最新文章
- article.app.php,【求助】修改app\portal\AdminArticle.php二次开发提交数据出错的疑问
- wpf custom control
- 1.8 循环神经网络的梯度消失-深度学习第五课《序列模型》-Stanford吴恩达教授
- 7 款顶级开源 BI(商务智能)软件和报表工具
- C++调用C#的dll
- win10一直卡在自动修复_分享:win10自动修复过程中无法正确启动怎么办?
- linux pgpgin pgpgout pswpin pswpout 说明
- 关于MFC下多线程,在线程中创建非模态对话框以及消息传递
- SpringBoot------拦截器Filter的使用
- Rayman的绝顶之路——Leetcode每日一题打卡6
- 把txt 转换成CHM的目录或Index
- Windows 10搭建SVN服务器
- 印刷机在纸厚发生变化时的压力调节
- 两张人脸图像比对ocr技术
- The container name /mysql is already in use by container
- 基于springboot的毕业设计管理系统
- 迅雷漫画下载 v1.0(绿色版) 附源码
- 责任链模式(Chain of Responsibility)
- 【PAT】PAT官网更新
- 2022年全球与中国低压陶瓷电容器行业发展趋势及投资战略分析报告
热门文章
- HTML+CSS+JS实现echarts图表炫光分布地图动画
- java echarts 散点图,echarts在地图上绘制散点图(任意点)
- mysql创建临时表 分页_Mysql 如何创建一张临时表
- linux 触摸屏测试源码_Linux触摸屏驱动
- Python编程及高级数据分析
- java注释的理解,java注解原理——记录一下自己的理解
- mysql innodb表移植_mysql Innodb引擎独立表空间下通过复制.ibd文件快速迁移数据文件...
- vue、cnpm不是内部文件_安装了vue-loader vue-template-compiler成功后运行 vue-loader -V提示不是内部文件...
- Css内边距与外边距
- php 监听端口数据客户端ip_PHP做端口监听示例代码