93-time模块
time模块
一.time模块
import time
1.1 时间戳
时间戳(timestamp):时间戳表示从1970年1月1日00:00:00:开始按秒九三的时间偏移量
import time
time_stamp = time.time()
print(time_stamp,type(time_stamp))
1.2 格式化时间
格式化时间字符串(format string):格式化时间表示的是普通的字符串格式的时间
import time
format_time = time.strftime("%Y-%m-%d %X")
print(format_time,type(format_time))
# 2019-09-15 14:12:22 <class 'str'>
1.3 结构化时间
结构化时间(struct_time):struct_time元祖共有九个元素,分别为(年,月,日,时,分,秒,一年中的第几周,一年中的第几天,夏令时)
print(f'本地时区的struct_time:\n{time.localtime()}')
print(f'UTC时区的struct_time:\n{time.gmtime()}')
# 本地时区的struct_time:
# time.struct_time(tm_year=2019, tm_mon=9, tm_mday=15, tm_hour=14, tm_min=21, tm_sec=6, tm_wday=6, tm_yday=258, tm_isdst=0)
# UTC时区的struct_time:
# time.struct_time(tm_year=2019, tm_mon=9, tm_mday=15, tm_hour=6, tm_min=21, tm_sec=6, tm_wday=6, tm_yday=258, tm_isdst=0)
#结构化时间的基准时间
print(time.localtime(0))
# time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
# 结构化时间的基准时间加上一年的时间
print(time.localtime(3600*24*365))
# time.struct_time(tm_year=1971, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=1, tm_isdst=0)
1.4 不同格式时间之间的转换

如上图所示,我们总能通过某种方法在结构化时间-格式化时间-时间戳三者之间进行转换,下面我们将用代码展示如何通过这些方法转换时间格式。
结构化时间
now_time = time.localtime()
print(now_time)
# time.struct_time(tm_year=2019, tm_mon=9, tm_mday=15, tm_hour=14, tm_min=31, tm_sec=22, tm_wday=6, tm_yday=258, tm_isdst=0)
把结构化时间转换为时间戳格式
print(time.mktime(now_time))
# 1568529137.0
把结构化时间转换为格式化时间
# %Y年-%m月-%d天 %X时分秒=%H时:%M分:%S秒
print(time.strftime("%Y-%m-%d %X", now_time))
# 2019-09-15 14:33:12
把格式化时间化为结构化时间,它和strftime()是逆操作
print(time.strptime('2013-05-20 13:14:52', '%Y-%m-%d %X'))
time.struct_time(tm_year=2013, tm_mon=5, tm_mday=20, tm_hour=13, tm_min=14, tm_sec=52, tm_wday=0, tm_yday=140, tm_isdst=-1)
把结构化时间表示为这种形式:'Sun Jun 20 23:21:05 1993'。
print(time.asctime())
# Sun Sep 15 14:36:09 2019
如果没有参数,将会将time.localtime()作为参数传入。
print(time.asctime(time.localtime()))
# Sun Sep 15 14:36:09 2019
把一个时间戳转化为time.asctime()的形式。
print(time.ctime())
# Sun Sep 15 14:36:09 2019
如果参数未给或者为None的时候,将会默认time.time()为参数。它的作用相当于
time.asctime(time.localtime(secs))。
print(time.ctime(time.time()))
# Sun Sep 15 14:36:09 2019
1.5 其它用法
推迟指定的时间运行,单位为秒
start = time.time()
time.sleep(3)
end = time.time()
print(end-start)
# 3.000171422958374
93-time模块的更多相关文章
- python 各模块
01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 语言支 ...
- C#开发命名规范
学习C#之初,始终不知道怎么命名比较好,很多时候无从命名,终于有一天我整理了一份命名规范文档,自此我就是按照这个命名规范书写代码,整洁度无可言表,拙劣之处请大家斧正,愚某虚心接受,如有雷同,不胜荣幸 ...
- 我自己总结的C#开发命名规范整理了一份
我自己总结的C#开发命名规范整理了一份 标签: 开发规范文档标准语言 2014-06-27 22:58 3165人阅读 评论(1) 收藏 举报 分类: C#(39) 版权声明:本文为博主原创文章, ...
- C#开发命名规范总结整理
1. 命名规范a) 类[规则1-1]使用Pascal规则命名类名,即首字母要大写.eg:Class Test{ ...}[规则1-2]使用能够反映类功能的名词或名词短语命名类.[规则1-3]不 ...
- (转载)C#语言开发规范
1. 命名规范a) 类[规则1-1]使用Pascal规则命名类名,即首字母要大写.eg:Class Test{...}[规则1-2]使用能够反映类功能的名词或名词短语命名类.[规则1-3]不要使用“ ...
- C#语言开发规范
1. 命名规范 a) 类 [规则1-1]使用Pascal规则命名类名,即首字母要大写. eg: Class Test { ... } [规则1-2]使用能够反映类功能的名词或名词短语命名类. [规则 ...
- C#语言开发规范-ching版
拙劣之处请大家斧正,愚某虚心接受,如有雷同,不胜荣幸 C#语言开发规范 作者ching 1. 命名规范 a) 类 [规则1-1]使用Pascal规则命名类名,即首字母要大写. eg: Class T ...
- 异常处理_Maven多模块web项目整合ssm+dubbo
异常如下: [ERROR][org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader. ...
- iOS开发之聊天模块--内容保存逻辑实现
需求详解: 在实际开发中,有可能是在后期优化的时候,会有这么需要优化的需求:聊天输入框保存之前输入的文本,提高用户的良好体验. 在聊天模块中,用户可能会在输入框输入若干字符,但是没有点击发送就点击退出 ...
- iOS开发之Socket通信实战--Request请求数据包编码模块
实际上在iOS很多应用开发中,大部分用的网络通信都是http/https协议,除非有特殊的需求会用到Socket网络协议进行网络数 据传输,这时候在iOS客户端就需要很好的第三方CocoaAsyncS ...
随机推荐
- Spring Boot从入门到放弃-Spring Boot 整合测试
站长资讯摘要:使用Spring Boot 整合测试,对Controller 中某个方法进行测试或者对Service,Mapper等进行测试,不需要运行项目即可查看运行结果是否和期望值相同,Spring ...
- Codeforces Round #576 (Div. 2) D. Welfare State
http://codeforces.com/contest/1199/problem/D Examples input1 output1 input2 output2 Note In the firs ...
- 三十七、www服务nginx进阶
六.查看nginx默认首页和目录:如下,可以看到,默认的目录是html,首页是index.html [root@djw1 conf]# grep html nginx.conf ...
- 吴裕雄--天生自然python机器学习:机器学习简介
除却一些无关紧要的情况,人们很难直接从原始数据本身获得所需信息.例如 ,对于垃圾邮 件的检测,侦测一个单词是否存在并没有太大的作用,然而当某几个特定单词同时出现时,再辅 以考察邮件长度及其他因素,人们 ...
- php中的几种四舍五入取整、向上取整、向下取整、小数截取方法
echo intval(4.5);echo "<br />";//直接取整,舍弃小数保留整数echo round(4.5);echo "<br /> ...
- JDK5.0 Annotation学习笔记(一)
背景知识: 从JDK5开始提供名为Annotation(注释)的功能,它被定义为JSR-175规范.注释是以"@注释名"在代码中存在的,还可以添加一些参数值,例如: ...
- socket握手SYN和ACK理解
ACK 英文缩写: ACK (ACKnowledge Character) 中文译名: 确认字符 分类: 传输与接入 解释: 在数据通信传输中,接收站发给发送站的一种传输控制字符.它表示确认发来的数据 ...
- jmeter json乱码
0 环境 系统环境:win7 1 操作 1 找到jmeter.properties 找到jmeter下的bin目录jmeter.properties文件 例如apache-jmeter-\bin\jm ...
- MS激活
亲测可用 国内博客 https://msguides.com/ 他是翻译的这个哥们的网页: https://msguides.com/
- linux下使用过的命令总结(未整理完)
1.常用命令不需解释 ls\cd\cp\mv\pwd\file\vi\vim\cat 2.getconf LONG_BIT 终端返回32表示操作系统32位,返回64表示操作系统64位. 3.ifcon ...