time模块、装饰器、类的装饰器
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模块提供了非常方便的函数供可以调用,首先我们先了解
一些需要认识的格式化符号:
| %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模块、装饰器、类的装饰器的更多相关文章
- java基本类型和包装器类
java是一种面向对象语言,java中的类把方法与数据连接在一起,并构成了自包含式的处理单元.但在java中不能定义基本类型(primitive type),为了能将基本类型视为对象来处理,并能连接相 ...
- MyBatis-Spring 学习笔记一 SqlSessionFactoryBean以及映射器类
MyBatis-Spring 是一个用来整合 MyBatis 和 Spring 框架的小类库,通过这个jar包可以将 MyBatis 代码地整合到 Spring 中. 使用这个类库中的类, Sprin ...
- 11.python描述符---类的装饰器---@property
描述符1.描述符是什么:描述符本质就是一个新式类,在这个新式类中,至少实现了__get__(),__set__(),__delete__()这三个内置方法中的一个,描述符也被称为描述符协议(1):__ ...
- python使用类作为装饰器
1.普通就是一个函数作为装饰器,也可以用类名作为装饰器. 因为类和函数都是callable的,都可以使用括号来调用运行他. 2.上上篇的缓存一段时间的还是函数作为装饰器,类只是充当了比模块更下一级的命 ...
- day28-描述符应用与类的装饰器
#!/usr/bin/env python# -*- coding:utf-8 -*-# ------------------------------------------------------- ...
- python描述符(descriptor)、属性(property)、函数(类)装饰器(decorator )原理实例详解
1.前言 Python的描述符是接触到Python核心编程中一个比较难以理解的内容,自己在学习的过程中也遇到过很多的疑惑,通过google和阅读源码,现将自己的理解和心得记录下来,也为正在为了该问题 ...
- python_如何定义装饰器类?
案例: 实现一个能将函数调用信息记录到日志的装饰器 需求: 把每次函数的调用时间,执行时间,调用次数写入日志 可以对被装饰函数分组,调用信息记录到不同日志 动态修改参数,比如日志格式 动态打开关闭日志 ...
- Python之路(第二十八篇) 面向对象进阶:类的装饰器、元类
一.类的装饰器 类作为一个对象,也可以被装饰. 例子 def wrap(obj): print("装饰器-----") obj.x = 1 obj.y = 3 obj.z = 5 ...
- Python全栈day28(类的装饰器)
类是一个对象也可以像函数一样加装饰器 类的装饰器.py def deco(obj): print('======',obj) obj.x=1 obj.y=2 obj.z=3 return obj # ...
- python__高级 : 类当作装饰器
类在创建对象时,会调用 __init__ 初始化一些东西 , 然后 如果类中定义了 __call__ 方法,可以直接用 对象() 这种方法调用,所以可以用类来装饰函数: class Test(ob ...
随机推荐
- PHP对象注入 PHP Object Injection
From:PHP Object Injection Last revision (mm/dd/yy): 01/7/2015 译者:李秋豪 Wednesday, 24. May 2017 05:48PM ...
- 【CSS3】渐变
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- layui动态设置下拉框数据,根据后台数据设置选中
追加下拉框数据: 设置默认选中: 正常的判断这种情况是不行的,因为追加出的数据,在前台显示的并不是同一个下拉框,原来的下拉框被隐藏了 因此需要:根据原来的位置,寻找下一个节点,寻找子节点的方式找到相应 ...
- AMD与CMD区别
区别: 1. 对于依赖的模块,AMD 是提前执行,CMD 是延迟执行.不过 RequireJS 从 2.0 开始,也改成可以延迟执行(根据写法不同,处理方式不同).CMD 推崇 as lazy as ...
- IOS学习1——IOS应用程序的生命周期及基本架构
一.应用程序的状态和多任务 有时系统会从app一种状态切换另一种状态来响应系统发生的事件.例如,当用户按下home键.电话打入.或其他中断发生时,当前运行的应用程序会切换状态来响应.应用程序的状态有以 ...
- ios单独的页面支持横竖屏的状态调整,HTML5加载下(更新2)
单独的页面支持横竖屏的状态调整,HTML5加载下 工程中设置只支持竖屏状态,在加载HTML5的界面可以是横竖屏的,在不对工程其他界面/设置做调整的同时,可以这样去 #import "View ...
- Mac 终端—不同文件不同颜色显示,提示文字
原文地址 修改Mac终端(Terminal)里不同类型文件的显示颜色 修改Mac终端(Terminal)的提示文字 Mac终端显示/隐藏文件命令 1. 修改Mac终端(Terminal)里不同类型文件 ...
- java获取当前应用的运行信息(内存,线程,运行时间,状态等)
一:目的 写这一段程序的原因是需要监控部署的的应用是否正常运行,并且显示其运行状态.在进程莫名死掉后甚至可以自动启动该应用. 首先这段代码可以获取的信息如下 /** * 当前进程运行的主机名 */ p ...
- Nginx的 HTTP 499 状态码处理
1.前言 今天在处理一个客户问题,遇到Nginx access log中出现大量的499状态码.实际场景是:客户的域名通过cname解析到我们的Nginx反向代理集群上来,客户的Web服务是由一个负载 ...
- 使用Linux 安装MySQL
文章 link 在安装mysql数据库服务器前,确保你的linux系统是可以连接网络的,下面我们将通过源码方式来安装mysql首先通过putty登入进你的Linux系统,确保系统中已经安装的gcc ...