python  time模块

  导入模块: import time    #time模块是python中最基本的模块之一

  输出时间戳:time.time()    #可以用变量接收,要打印出来要用print(),如 a = time.time(),print(a)

                     输出为:1516330026.4591534(1970年1月1日00:00:00后经过的浮点秒数)

  时间元组: time.localtime()  #可以用变量接收,用print()打印,默认是当前的时间;也可以传入一个时间戳,

                  如:time.localtime(1316331844.899376),它将返回时间戳对应的时间元组。

                 返回值:time.struct_time(tm_year=2011, tm_mon=9, tm_mday=18, tm_hour=15,

                     tm_min=44,tm_sec=4, tm_wday=6, tm_yday=261, tm_isdst=0)

  上面的红字部分是一个时间元组,那么时间元组的含义是什么呢?返回元组的内容如下:

时间元组返回值分析
索引 属性(attribute) 值(value)
tm_year(年) 2018
tm_mon(月) 1~12
tm_mday(日) 1~31
tm_hour(时) 0~23
tm_min(分) 0~59
tm_sec(秒) 0~60
tm_wday(星期几) 0~6
tm_yday(一年中的第几天) 1~366
tm_isdst(是否为夏令时) 0,1,-1(-1:夏令时)

  我们经常需要格式化输出时间,那么如何才能做到呢?time模块提供了非常方便的函数供可以调用,首先我们先了解

一些需要认识的格式化符号:

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  当前时区的名称
 %%  %号本身

  time模块主要要熟悉time.time( )、time.localtime([secs])、time.asctime([tupletime])、time.strftime(fmt[,tupletime])

           time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')、time.mktime(tupletime)、time.sleep()

  前两个我们已经熟悉了,下面介绍其他五个:

  time.asctime([tupletime])  :接受时间元组并返回一个可读的形式为"Fri Jan 19 13:37:39 2018"(2018年01月19日 周五13时37分39秒)的24个字符的字符串。

  time.strftime(fmt,[tupletime]) :接收以时间元组,并返回以可读字符串表示的当地时间,格式由fmt决定。

    如:  print(time.strftime('%Y-%m-%d %H:%M:%S %w', time.localtime()))

    输出:    2018-01-19 13:43:44 5  它的数据类型是str

  time.strptime(str, '%Y-%m-%d %H:%M:%S %w') :根据fmt的格式,把一个时间字符串,解析为时间元组。利用上面返

回的字符串,使用time.strptime()将它转化为时间元组:print(time.strptime(st, '%Y-%m-%d %H:%M:%S %w')),其中st为接

收time.strftime()的变量。返回结果:time.struct_time(tm_year=2018, tm_mon=1, tm_mday=19, tm_hour=13, tm_min=50,

tm_sec=24, tm_wday=4, tm_yday=19, tm_isdst=-1),这是一个时间元组。

  time.mktime(tupletime) :接受时间元组并返回时间辍(1970纪元后经过的浮点秒数)。

    如:

      

    这里的b是一个时间元组,记住在传时间元组时,如果是自己写元组,就必须去掉哪些英文简写,不然会报错,如果是变量接收再传入,则不用考虑这个问题!

    返回:1516341024.0

  time.sleep() :推迟线程的执行。

  

time模块、装饰器、类的装饰器的更多相关文章

  1. java基本类型和包装器类

    java是一种面向对象语言,java中的类把方法与数据连接在一起,并构成了自包含式的处理单元.但在java中不能定义基本类型(primitive type),为了能将基本类型视为对象来处理,并能连接相 ...

  2. MyBatis-Spring 学习笔记一 SqlSessionFactoryBean以及映射器类

    MyBatis-Spring 是一个用来整合 MyBatis 和 Spring 框架的小类库,通过这个jar包可以将 MyBatis 代码地整合到 Spring 中. 使用这个类库中的类, Sprin ...

  3. 11.python描述符---类的装饰器---@property

    描述符1.描述符是什么:描述符本质就是一个新式类,在这个新式类中,至少实现了__get__(),__set__(),__delete__()这三个内置方法中的一个,描述符也被称为描述符协议(1):__ ...

  4. python使用类作为装饰器

    1.普通就是一个函数作为装饰器,也可以用类名作为装饰器. 因为类和函数都是callable的,都可以使用括号来调用运行他. 2.上上篇的缓存一段时间的还是函数作为装饰器,类只是充当了比模块更下一级的命 ...

  5. day28-描述符应用与类的装饰器

    #!/usr/bin/env python# -*- coding:utf-8 -*-# ------------------------------------------------------- ...

  6. python描述符(descriptor)、属性(property)、函数(类)装饰器(decorator )原理实例详解

     1.前言 Python的描述符是接触到Python核心编程中一个比较难以理解的内容,自己在学习的过程中也遇到过很多的疑惑,通过google和阅读源码,现将自己的理解和心得记录下来,也为正在为了该问题 ...

  7. python_如何定义装饰器类?

    案例: 实现一个能将函数调用信息记录到日志的装饰器 需求: 把每次函数的调用时间,执行时间,调用次数写入日志 可以对被装饰函数分组,调用信息记录到不同日志 动态修改参数,比如日志格式 动态打开关闭日志 ...

  8. Python之路(第二十八篇) 面向对象进阶:类的装饰器、元类

    一.类的装饰器 类作为一个对象,也可以被装饰. 例子 def wrap(obj): print("装饰器-----") obj.x = 1 obj.y = 3 obj.z = 5 ...

  9. Python全栈day28(类的装饰器)

    类是一个对象也可以像函数一样加装饰器 类的装饰器.py def deco(obj): print('======',obj) obj.x=1 obj.y=2 obj.z=3 return obj # ...

  10. python__高级 : 类当作装饰器

    类在创建对象时,会调用 __init__ 初始化一些东西 , 然后 如果类中定义了 __call__ 方法,可以直接用  对象()  这种方法调用,所以可以用类来装饰函数: class Test(ob ...

随机推荐

  1. mybatis 基础

    前言 MyBatis作为一款持久层的框架,从最初的ibatis更名,经过五六年的发展更新,如今已经更新到了3.4.5版本.MyBatis通过简单的xml或注解配置,就能将接口和Java的对象映射成数据 ...

  2. IntelliJ IDEA 2017 注册方法

    本文使用破解方式注册. JetbrainsCrack-2.6.2.jar适用于ideaIU-2017.2.之前版本,若下载的版本较新破解文件可能无法使用,破解时一闪而退. 其中JetbrainsCra ...

  3. 一个Web前端自学者的自述

    想来想去还是写下这篇文章,先说明,我精通JAVA编程语言和web前端常见的技术,个人是做JAVA的多,但是更加喜欢前端.因为我从高一开始接触JAVA,家父是黑马的JAVA讲师,自己对编程很热爱,在大学 ...

  4. jmeter+ant+jenkins的自动化接口测试

    一.Jenkins安装配置 1.安装配置JDK1.7+环境变量: 2.下载jenkins.war,放入D:\jenkins目录下,目录位置随意: Jenkins启动方法: cmd进入Jenkins目录 ...

  5. UITableView的性能优化1

    UITableView作为ios中使用最频繁的控件之一,其性能优化也是常常要面对的,尤其是当数据量偏大并且设备性能不足时.本文旨在总结tableview的几个性能优化tips,并且随着认识的深入,本文 ...

  6. C#创建对象时各种初始化属性、字段的方式的执行顺序

    创建对象代码如下: new FilterInfo(Student.CreateTimeProperty,"朱七",Express.Equals,Relationship.Or) { ...

  7. 使用SplitContainer来实现隐藏窗口的部分内容(转)

    有两种方法: (1) Splitter:比较老的方法 (2) SplitContainer:比较新的方法 最终界面如下: 方法一:使用Splitter实现 (1) 在窗口中添加一个Panel控件,即P ...

  8. 高性能管线式HTTP请求(实践·原理·实现)

      该篇实际是介绍pipe管线的原理,下面主要通过其高性能的测试实践,解析背后数据流量及原理.最后附带一个简单的实现     实践 先直接看对比测试方法 对于单一客户端对服务器进行http请求,一般我 ...

  9. ArcGIS 网络分析[1.1] 创建用于网络分析用的线类型shp文件[这个太基础了吧!]

    具体的准备,在上一篇就说过了,不再赘述. 阅读本篇前,需要的预备知识是:ArcGIS创建各种矢量数据的方法,了解地理坐标与投影坐标 本篇只创建单一的线数据,至于点数据,以后进行复杂的网络分析时再添加进 ...

  10. 发布 Google Chrome插件教程

    换个视角,世界不一样.嘘~~~ 如果你会使用js的话,那么你就可以自己动手写一个chrome插件,而且非常容易.google是一个全球化的平台,想想自己的程序被世界人民所使用,是不是很激动? 注册开发 ...