19、模块

一、collection模块

  1、namedtuple :生成可以使用名字访问元素内容的tuple

  

from collections import namedtuple
point=namedtuple(‘ppoint‘,[‘x‘,‘y‘,‘z‘])
p1=point(2,5,9)
print(p1)

  2、deque:生成双端数列,可以从两段进行添加和访问的数列

  

  使用list存储数据时,按索引访问元素很快,但是插入和删除元素就很慢了,因为list是线性存储,数据量大的时候,插入和删除效率很低。deque是为了高效实现插入和删

除操作的双向列表,适合用于队列和栈。

  deque除了实现list的append()pop()外,还支持appendleft()popleft(),这样就可以非常高效地往头部添加或删除元素。

  

from collections import deque
qq=deque([1,3])    #从后面放数据 deque[1,3,‘a‘]
qq.append(‘a‘)     #从前面放数据 deque[‘g‘,1,3,‘a‘]
qq.appendleft(‘g‘)
print(qq)

  3、OrderedDict 有序字典,将字典变成一个有顺序的字典。注意:OrderedDict会按照插入的顺序排列,而不是按照key本身

  

from collections import OrderedDict
qq=OrderedDict([(‘a‘,1),(‘b‘,2),(‘c‘,3)])
qq[1]=‘a‘
qq[4]=5
qq[‘g‘]=‘k‘
print(qq.keys())

  4、defaultdict:希望在dict中key不存在时,不是报错误,而是返回一个默认值,那么就用defaultdict

  

from collections import defaultdict
dd=defaultdict(lambda :‘lalala‘)     #默认返回值
dd[‘ab‘]=‘c‘                  #赋值
print(dd[‘ab‘])              #‘ab‘的值存在
print(dd[‘bb‘])              #’bb‘的值不存在,返回  lalala

  5、counter:用来统计值出现的次数,它是一个无序的容器类型,以字典的键值对形式存储,其中元素作为key,其计数作为value。计数值可以是任意的Interger(包括0和负数)。Counter类和其他语言的bags或multisets很相似

from collections import Counter
d=Counter(‘jndfsahfudf;kldafjdfbjSJIDJIOF‘)
print(d)

二、time   时间模块

  用时间模块之前应该导入事件模块

  常用的方法:

  time.time():获取当前的时间戳

  time.sleep(secs):(线程)推迟指定的时间运行,单位为秒

1、表示时间的三种方式:

  1、时间戳:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型

  2、格式化的时间字符串(Format String): ‘1999-12-06’

  3、元组(struct_time) :struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)

   时间戳是计算机能够识别的时间;时间字符串是人能够看懂的时间;元组则是用来操作时间的

2、struct_time(元祖)

  time.localtime():将当前时间戳转化为当前时区struct_time

3、time.strftime():格式化时间字符串

  

>>>time.strftime("%Y-%m-%d %X")
‘2017-07-24 13:54:37‘
>>>time.strftime("%Y-%m-%d %H-%M-%S")
‘2017-07-24 13-55-04‘

 

原文地址:https://www.cnblogs.com/wyx666/p/8259092.html

时间: 2024-10-31 06:51:17

19、模块的相关文章

19.模块

一,什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译为共享库或DLL的C或C++扩展 3 包好一组模块的包 4 使用C编写并链接到python解释器的内置模块 为何要使用模块? 如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过pytho

JavaScript AMD 模块加载器原理与实现

关于前端模块化,玉伯在其博文 前端模块化开发的价值 中有论述,有兴趣的同学可以去阅读一下. 1. 模块加载器 模块加载器目前比较流行的有 Requirejs 和 Seajs.前者遵循 AMD规范,后者遵循 CMD规范.前者的规范产出比较适合于浏览器异步环境的习惯,后者的规范产出对于写过 nodejs 的同学来说是比较爽的.关于两者的比较,有兴趣的同学请参看玉伯在知乎的回答 AMD和CMD的区别有哪些.本文希望能按照 AMD 规范来简单实现自己的一个模块加载器,以此来搞清楚模块加载器的工作原理.

软考错题合集之13-11-AM

1.在程序执行过程中,Cache与主存的地址映像由硬件自动完成. Cache与主存的地址映像需要专门的硬件自动完成,使用硬件来处理具有更高的转换速率. 2.指令寄存器的位数取决于指令字长. 指令寄存器IR是用来存放要执行的指令的,所以跟指令的长度有关. 3.若计算机存储数据采用的是双符号位{00表示正号,11表示负号},两个符号相同的数相加时,如果运算结果的两个符号位经逻辑异或运算得1,则可断定这两个数相加的结果产生了溢出. 计算机运算溢出检测机制,采用双符号位,00表示正号,11表示负号.如果

SpringMVC拦截器+Spring自定义注解实现权限验证

设计思路 主要针对需要登录后操作的接口进行校验.接入层在对外暴露接口后,网页.APP.第三方等等途径进行访问接口.用户请求首先会被SpringMVC拦截器拦截到,在拦截器里第一步就是需要校验用户的登录身份(由于是分布式系统这里采用的是userId+accessToken方式来校验),登录校验通过之后再进行用户权限校验,此时会自动拦截@AuthValidate注解的method(核心),如果权限校验失败则抛出权限不足异常,否则校验通过之后再执行具体接口并返回结果. 1.自定义注解 1 packag

Yii源码阅读笔记(二十二)

Module类,属性的注释和构造函数的注释: 1 <?php 2 /** 3 * @link http://www.yiiframework.com/ 4 * @copyright Copyright (c) 2008 Yii Software LLC 5 * @license http://www.yiiframework.com/license/ 6 */ 7 8 namespace yii\base; 9 10 use Yii; 11 use yii\di\ServiceLocator;

javascript语言精粹----笔记【转载】

javascript语言精粹----笔记 1.6种值会为假(==false),分别是false,null,undefined,' ',0,NaN 2.typeof有6种值,分别是'number','string','boolean','undefined','function','object';其中typeof(null),结果是'object' 3.number类型总是64位浮点数,两个整数相除也可能出现非整数结果 4.如果第一个运算数的值为假,那么运算符&&产生它的第一个运算数的值.

02 Python 起步 - 《Python 核心编程》

?? 介绍 ?? 输入/输出 ?? 注释 ?? 操作符 ?? 变量与赋值 ?? Python 类型 ?? 缩进 ?? 循环与条件 ?? 文件 ?? 错误 ?? 函数 ?? 类 ?? 模块 2.3 注释 普通注释 和大部分脚本及Unix-shell 语言一样,Python 也使用 # 符号标示注释,从 # 开始,直到一行结束的内容都是注释.     >>> # one comment         ... print 'Hello World!' # another comment  

[学] 《Python 核心编程》学习笔记(二)

2. Python 起步 2.1 print 1 print "Hello World!" 2.2 _:最后一个表达式的值 >>:输出重定向 %:打印的格式化字符串和值进行风格,% 后的值为一个 tuple 对象,用 “()” 包含的 print "%s is a number %d." % ("Python", 6) import sys print >> sys.stderr, "msg" file

python--第三天总结

[collection系列]1.计数器(counter) Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能 c = Counter('abcdeabcdabcaba') print c 输出:Counter({'a': 5, 'b': 4, 'c': 3, 'd': 2, 'e': 1}) import collections  或from collections import Counter 2.有序字典(orderedDict )from c

网摘读书笔记----javascript语言精粹

原文链接:http://www.cnblogs.com/Cohlint/archive/2012/11/26/2788790.html 1.6种值会为假(==false),分别是false,null,undefined,' ',0,NaN 2.typeof有6种值,分别是'number','string','boolean','undefined','function','object';其中typeof(null),结果是'object' 3.number类型总是64位浮点数,两个整数相除也可