Python--时间模块time模块
原地址:https://finthon.com/python-time/
Python时间模块——time模块
简介
在数据处理当中,经常会碰到处理时间的问题。比如:在序列预测的过程中,需要通过学习一段时间的数据,去预测未来一段时间的结果。这时候就要用到时间(time、datetime、calendar)模块,今天介绍时间模块中的time模块。
表示时间的方法
在Python中有三种表示时间的方式:
- 时间戳:是指某个时间与1970年1月1日00:00:00的差值,单位为秒,是一个浮点型数值;
- 格式化时间:格式化时间由字母和数字表示的时间,比如:’Mon Oct 29 16:04:27 2018’;
- 元组:将时间的信息放到一个元组中。
其中格式化时间中每个字符的含义如下:
| 符号 | 描述 |
|---|---|
| %a | 简化星期名称 |
| %A | 完整星期名称 |
| %b | 简化月份名称 |
| %B | 完整月份名称 |
| %c | 相应的日期和时间表示 |
| %d | 一个月中的第几天(01 – 31) |
| %H | 一天中的第几个小时(24小时制,00 – 23) |
| %I | 第几个小时(12小时制,01 – 12) |
| %j | 一年中的第几天(001 – 366) |
| %m | 月份(01 – 12) |
| %M | 分钟数(00 – 59) |
| %p | 本地am或者pm的相应符 |
| %S | 秒(01 – 61) |
| %U | 一年中的星期数。(00 – 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周 |
| %w | 一个星期中的第几天(0 – 6,0是星期天) |
| %W | 和%U基本相同,不同的是%W以星期一为一个星期的开始 |
| %x | 相应日期 |
| %X | 相应时间 |
| %y | 去掉世纪的年份(00 – 99) |
| %Y | 完整的年份 |
| %Z | 时区的名字(如果不存在为空字符) |
| %% | ‘%’字符 |
在元组中会有9项参数,如下表所示:
| 关键字 | 描述 |
|---|---|
| tm_year | 年 |
| tm_mon | 月(1-12) |
| tm_mday | 日(1-31) |
| tm_hour | 时(0-23) |
| tm_min | 分(0-59) |
| tm_sec | 秒(0-61),闰年多两秒 |
| tm_wday | 周一-周日(0-6) |
| tm_yday | 一年中第几天(1-366) |
| tm_isdst | 是否夏令时(1:是;0:不是;-1:未知;默认 -1) |
time模块中常用的函数可以总结成下图,基本上就是三者如何转换:

接下来我们会一一介绍。
time.time()
该函数返回当前时间的时间戳,也就是距离1970年1月1日00:00:00的差值。
代码演示:
|
1
2
3
|
>>>import time
>>>time.time()
1540808367.8872325
|
time.localtime()
该函数能将一个时间戳转换成元组的形式,如果没有指定时间戳,默认使用当前时间的时间戳。需要注意的是返回的时间是当地时间。
代码演示:
|
1
2
3
4
5
6
|
>>>import time
>>>time.localtime(1540808367.8872325)
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=29, tm_hour=18, tm_min=19, tm_sec=27, tm_wday=0, tm_yday=302, tm_isdst=0)
>>>time.localtime()
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=29, tm_hour=18, tm_min=26, tm_sec=10, tm_wday=0, tm_yday=302, tm_isdst=0)
|
time.gmtime()
该函数和localtime()的功能一样,只是它返回的时间是格林威治天文时间(UTC),也就是世界标准时间。中国时间为UTC+8。
代码演示:
|
1
2
3
|
>>>import time
>>>time.gmtime()
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=29, tm_hour=10, tm_min=31, tm_sec=58, tm_wday=0, tm_yday=302, tm_isdst=0)
|
time.mktime()
该函数将一个元组转换成时间戳。
代码演示:
|
1
2
3
|
>>>import time
>>>time.mktime(time.localtime())
1540809214.0
|
time.sleep()
该函数能让程序线程暂停休息,传入几秒,休息几秒。
代码演示:
|
1
2
3
4
|
import time
print(time.time())
time.sleep(3)
print(time.time())
|
结果为:
|
1
2
|
1540809376.7814057
1540809379.7822838
|
time.asctime()
该函数将一个元组转换成格式化时间。如果没有传入参数,默认传入time.localtime()。
代码演示:
|
1
2
3
|
>>>import time
>>>time.asctime()
'Mon Oct 29 18:39:10 2018'
|
time.ctime()
该函数将一个时间戳转换成格式化时间。如果没有传入参数,默认传入time.time()。
代码演示:
|
1
2
3
|
>>>import time
>>>time.ctime()
'Mon Oct 29 18:41:04 2018'
|
time.strftime()
该函数按照格式化字符把一个元组转换成格式化时间字符串。如果没有传入参数,默认传入time.localtime()。
代码演示:
|
1
2
3
|
>>>import time
>>>time.strftime("%Y-%m-%d %X", time.localtime())
'2018-10-29 18:46:14'
|
time.strptime()
该函数按照格式化字符把一个格式化时间字符串转成元组。
|
1
2
3
|
>>>import time
>>>time.strptime('2018-10-29 18:46:14', '%Y-%m-%d %X')
time.struct_time(tm_year=2018, tm_mon=10, tm_mday=29, tm_hour=18, tm_min=46, tm_sec=14, tm_wday=0, tm_yday=302, tm_isdst=-1)
|
需要注意的是,当传入的时间中包括周数和天数(%U和%W),该函数才能使用。
总结
本文介绍了time模块中常用的几个函数,主要涉及到三种时间格式之间的转换。time模块在机器学习中,尤其在序列数据中使用较多。
Python--时间模块time模块的更多相关文章
- Python 时间和日期模块的常用例子
获取当前时间的两种方法 import datetime,time now = time.strftime("%Y-%m-%d %H:%M:%S") print now now = ...
- Python时间处理之time模块
1.time模块简介 time模块提供各种操作时间的函数 说明:一般有两种表示时间的方式: 第一种是时间戳的方式(相对于1970.1.1 00:00:00以秒计算的偏移量),时间戳是惟一 ...
- 浅谈Python时间模块
浅谈Python时间模块 今天简单总结了一下Python处理时间和日期方面的模块,主要就是datetime.time.calendar三个模块的使用.希望这篇文章对于学习Python的朋友们有所帮助 ...
- python时间-time模块
time是python自带的模块,用于处理时间问题,提供了一系列的操作时间的函数. 以下说明针对于 python2.7,其他版本可能有所差异. 模块提供了两个种表示时间的格式: 1.时间戳,是以秒表示 ...
- python基础 ---time,datetime,collections)--时间模块&collections 模块
python中的time和datetime模块是时间方面的模块 time模块中时间表现的格式主要有三种: 1.timestamp:时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算 ...
- Python时间模块
1 time 模块: 读取系统时钟当前时间: 在 time 模块中,time.time()和 time.sleep()函数是最有用的模块. 1.1 time.time() time.time()函数返 ...
- python 全栈开发,Day27(复习, defaultdict,Counter,时间模块,random模块,sys模块)
一.复习 看下面一段代码,假如运行结果有问题,那么就需要在每一步计算时,打印一下结果 b = 1 c = 2 d = 3 a = b+c print(a) e = a + d print(e) 执行输 ...
- Python时间日期格式化之time与datetime模块总结
1 引言 在实际开发过程中,我们经常会用到日期或者时间,那么在Python中我们怎么获取时间,以及如何将时间转换为我们需要的格式呢?在之前的开发中,也曾遇到time.datetime等模块下的不同函数 ...
- python时间模块和random模块
模块:用一坨代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能,可能需要多个函数才能 ...
- python 时间模块小结
python有两个重要的时间模块,分别是time和datetime time模块 表示时间的几种方法 时间元组 time.struct_time( tm_year=2016, tm_mon=7, tm ...
随机推荐
- linux系统普通用户设置密码
linux系统中如何给一个普通用户grindnt设置密码 一.新密码符合规则,用以下方式修改: #root用户直接更改gridnt密码,不需要输入旧密码 [root@subsname home]# p ...
- SpringBoot + Vue前后端分离图片上传到本地并前端访问图片
同理应该可用于其他文件 图片上传 application.yml 配置相关常量 prop: upload-folder: E:/test/ # 配置SpringMVC文件上传限制,默认1M.注意MB要 ...
- NLP 文本预处理
1.不同类别文本量统计,类别不平衡差异 2.文本长度统计 3.文本处理,比如文本语料中简体与繁体共存,这会加大模型的学习难度.因此,他们对数据进行繁体转简体的处理. 同时,过滤掉了对分类没有任何作用的 ...
- error: cannot connect to daemon解决办法
本文链接:https://blog.csdn.net/ipinki1218/article/details/80704806运行adb shell时出现error: cannot connect to ...
- BIM IFC算量
1.基础工程:挖槽.垫层.基础底板.基础墙.地圈梁.暖气沟.回填土等:2.主体工程:梁.板.柱.墙等:3.屋顶工程:挑檐.女儿墙.保温.防水.压顶等:4.装修工程:外墙抹灰.墙裙.门窗套.内墙抹灰.粉 ...
- Chrome浏览器控制网速的方法
- CentOS 7部署 Ceph分布式存储架构
一.概述 随着OpenStack日渐成为开源云计算的标准软件栈,Ceph也已经成为OpenStack的首选后端存储.Ceph是一种为优秀的性能.可靠性和可扩展性而设计的统一的.分布式文件系统. cep ...
- 配置Apache控制浏览器端的缓存的有效期
这个非常有用的优化,mod_expires可以减少20-30%左右的重复请求,让重复的用户对指定的页面请求结果都CACHE在本地,根本不向服务器发出请求.但要注意更新快的文件不要这么做.这个模块控制服 ...
- win7下docker环境安装
最近公司涉及到对docker容器引擎的使用,所以就在网上各种搜索,由于是win7系统,所以在使用上更是麻烦,遇到各种错误就是无法成功启动docker,经过两天的各种尝试下,终于安装成功,在此记录一下使 ...
- JS时间转换,url编码,jquery返回类型等问题
1.当时间被转换为json格式后会被转换成 /Date(...)/ 这种格式,其中...为时间转换成妙后的一串整数 function changeDateFormat(cellval) { )); v ...