python3_time模块详解
python提供的时间模块time是需要单独引入:
1、time.sleep(secs)# 推迟调用线程的运行,secs指的是秒
time.sleep(secs)
2、time.time():返回当前时间的时间戳
时间戳都是从1970年1月1日午夜经过了多久时间来表示,时间间隔是以秒为单位的浮点小数
import time ticks = time.time()
print("当前时间戳为:", ticks)
当前实际运行结果:
当前时间戳为: 1509945397.5449631
时间戳最适合做日期的运算。
1970年之前的无法以此计算,unix支持到2038年,所以之后的也不行。
struct_time元组
python用该元祖装起来的9组数字处理时间:

3、time.localtime([secs]):将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准
import time localtime = time.localtime(time.time())
#localtime = time.localtime()
print("本地时间为 :", localtime)
以上实例输出结果:
本地时间为 : time.struct_time(tm_year=2017, tm_mon=11, tm_mday=6, tm_hour=13, tm_min=38, tm_sec=32, tm_wday=0, tm_yday=310, tm_isdst=0)
4、time.gmtime([secs]):和localtime()方法类似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time。
>>>time.gmtime()
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=6, tm_hour=7, tm_min=24, tm_sec=0, tm_wday=0, tm_yday=310, tm_isdst=0)
5、time.asctime([t])格式化的时间:把一个表示时间的元组或者struct_time表示为这种形式:'Sun Jun 20 23:21:05 1993'。如果没有参数,将会将time.localtime()作为参数传入:
import time localtime = time.asctime(time.localtime(time.time()))
print("本地时间为 :", localtime) 以上实例输出结果:
本地时间为 : Mon Nov 6 13:49:41 2017
格式化日期:
#! /usr/bin/python3 import time # 格式化成2017-11-06 13:56:12形式
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) # 格式化成Mon Nov 06 13:59:42 2017形式
print(time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())) # 将格式字符串转换为时间戳,time.mktime(t):将一个struct_time转化为时间戳
a = "Mon Nov 06 13:59:42 2017"
print(time.mktime(time.strptime(a, "%a %b %d %H:%M:%S %Y"))) 以上实例输出结果:
2017-11-06 14:02:32
Mon Nov 06 14:02:32 2017
1509947982.0
6、time.clock():
以前看代码比较头疼的%
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
备注:
“%p”只有与“%I”配合使用才有效果。
文档中强调确实是0 - 61,而不是59,闰年秒占两秒(汗一个)。
当使用strptime()函数时,只有当在这年中的周数和天数被确定的时候%U和%W才会被计算。
总结:
在Python中共有三种表达方式:1)timestamp 2)tuple或者struct_time 3)格式化字符串。它们之间的转化如图所示:


其他相关模块和函数
在Python中,其他处理日期和时间的模块还有:
python3_time模块详解的更多相关文章
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- python之OS模块详解
python之OS模块详解 ^_^,步入第二个模块世界----->OS 常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows ...
- python之sys模块详解
python之sys模块详解 sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和我一起走进python的模块吧! sys模块的常见函数列表 sys.argv: 实现从程序外部向程序传 ...
- python中threading模块详解(一)
python中threading模块详解(一) 来源 http://blog.chinaunix.net/uid-27571599-id-3484048.html threading提供了一个比thr ...
- python time 模块详解
Python中time模块详解 发表于2011年5月5日 12:58 a.m. 位于分类我爱Python 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括: ...
- python time模块详解
python time模块详解 转自:http://blog.csdn.net/kiki113/article/details/4033017 python 的内嵌time模板翻译及说明 一.简介 ...
- 小白的Python之路 day5 time,datatime模块详解
一.模块的分类 可以分成三大类: 1.标准库 2.开源模块 3.自定义模块 二.标准库模块详解 1.time与datetime 在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时 ...
- 小白的Python之路 day5 random模块和string模块详解
random模块详解 一.概述 首先我们看到这个单词是随机的意思,他在python中的主要用于一些随机数,或者需要写一些随机数的代码,下面我们就来整理他的一些用法 二.常用方法 1. random.r ...
- Python中time模块详解
Python中time模块详解 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime以及calendar.这篇文章,主要讲解time模块. ...
随机推荐
- 几种压缩方式:zlib
zlib:zlib.h http://www.zlib.net/manual.html 编译时加 -lz ZEXTERN int ZEXPORT compress OF((Bytef *dest, u ...
- android开发笔记(二)导入项目到eclipse和另一个项目
NND,eclipse里导入工程出现问题了,整了半天,来个这问题,无效工程描述,找了半天看.projec文件是否工程名对应,看androidManifest.XML换里面的代码版本号,我擦都无济于事. ...
- 前端开发 - JavaScript - 总结
一.JavaScript的特征 javaScript是一种web前端的描述语言,也是一种基于对象(object)和事件驱动(Event Driven)的.安全性好的脚本语言.它运行在客户端从而减轻服务 ...
- 前端开发 - CSS - 下
CSS: 12.display 13.浮动效果 14.浮动特性 15.浮动产生的问题和解决方法 16.float京东导航栏 17.position 18.z-index 19.京东案例 12.disp ...
- MySQL数据库(二)
事务 数据库开启事务命令 #start transaction 开启事务 #Rollback 回滚事务,即撤销指定的sql语句(只能回退insert delete update语句),回滚到上一次co ...
- Centos7下实现免密码登录
一.生成密钥 [root@master ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to sa ...
- Appium+python移动端自动化测试-环境搭建(一)
搭建所在系统环境:Windows7版本64位系统 一.环境准备 jdk8.0.151 android-sdk_r20.3.4-windows python3.5 appium1.4.16.1 Node ...
- Data striping
条带化是把连续的数据分割成相同大小的数据块,把每段数据分别写入到阵列中的不同磁盘上的方法. 当多个进程同时访问一个磁盘时,可能会出现磁盘冲突.大多数磁盘系统都对访问次数(每秒的 I/O 操作,IOPS ...
- 006-Shell printf 命令
一.概述 printf 命令模仿 C 程序库(library)里的 printf() 程序. printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好. pr ...
- 19.Eclipse 修改默认的keystore签名文件
Android开发中apk运行都需要签名,就算连接手机直接运行调试,apk都有签名,开发工具会有默认的debug_keyStore Eclipse ADT调试运行使用的是临时生成的Debug专用证书, ...