新学了几个python模块,不是很鸡肋。
先说一个模块分类(基本上所有模块都是小写开头,虽然规范的写法是变量的命名规范,但是,都是这样写的)
1,C编写并镶嵌到python解释器中的内置模块
2,包好的一组模块的包
3.已经被编译好的共享库,或者是DLL的C或者是C++扩展
4,自己用python写好的代码
用模块就是为了能重用代码,就是为了功能更加强大,更加的快.
collection模块
注意了,这个collection
这个模块提供出了几种新的数据类型
namedtuple : 生成可以使用名字来访问元素内容的tuple
deque:双端队列,可以快速的从另外一侧追加或者推出对象
Counter:计数器,主要用于计数
OrderedDict:有序字典
defaultdict:带有默认值的字典 from collection import nametuple
point = namedtuple("point",["x","y"])
p=point(1,2)
print(p.x)#通过类与属性的建立连接 deque
用list存数据的时候,按照索引访问元素很快,但是要删除或者插入元素很慢,就是因为list是线性的存储,当数据量大的时候
改一个位置,就会影响别的位置。
所以就有了更加高效的删除和插入更加方便的双向列表,适合于队列和栈
from collections import deque #导入包中模块
q = deque(["a","b","c"]) #实例化一个双向列表对象
q.append("x") #默认是从右端加入
q.appendleft("y")
print(q)
>>deque(["y","a","b","c","x"])
删除或者添加都是特别的方便的appendleft(),还有 popleft().从头或者是从尾部添加删除都特别的方便的 OrderedDict
使用dict时候,Key都是无序的。在dict做迭代的时候,就没有办法了
这个OrderedDict就是保持有序的的Key from collections import OrderedDict
d = dict([("a",1),("c",3),("b",2)])
这里的key是无序的
od = OrderedDict([("a",1),("b",2),("c",3)])
print(od)
OrderedDict的key是有序的 defaultdict counter
时间模块
time.sleep(secs) (线程)推迟指定的时间运行,按秒计算时间
新学了几个python模块,不是很鸡肋。的更多相关文章
- 使用C/C++写Python模块
最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...
- Python模块之configpraser
Python模块之configpraser 一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...
- Python模块之"prettytable"
Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...
- python 学习第五天,python模块
一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...
- Python模块之day4
模块,代码归类实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才能 ...
- 教你分分钟开发一个属于自己的python模块(一)——能够直接在浏览器打印的方法
曾经,用惯了python print命令的人,惊叹于python语法的精简:后来,用过了tornado.django等web开发框架,不得不佩服当初开发这些框架的人们.于是,我们开始使用它们的框架== ...
- windows下安装python模块
如何在windows下安装python模块 1. 官网下载安装包,比如(pip : https://pypi.python.org/pypi/pip#downloads) pip-9.0.1.tar. ...
- 安装第三方Python模块,增加InfoPi的健壮性
这3个第三方Python模块是可选的,不安装的话InfoPi也可以运行. 但是如果安装了,会增加InfoPi的健壮性. 目录 1.cchardet 自动检测文本编码 2.lxml 用于解析 ...
- Python基础篇【第5篇】: Python模块基础(一)
模块 简介 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就 ...
随机推荐
- C# [LINQ] Linq Expression 获取多格式文件
using System; using System.IO; using System.Linq; using System.Linq.Expressions; internal static str ...
- react-redux-reducer
reducer是对dispatch(action)的响应,是一个纯函数,接受旧的state和action,返回新的state. //纯函数要注意的点,下面的例子myname不变 <script& ...
- 用generator 根据oracle表生成java代码,数据库与代码字段不一致
前两天用generator生成java代码时发现,生成的javabean和数据库里的字段对应不上,不是少几个就是有几个字段不一样,感觉很怪异,后来发现日志里边这个表转换成bean是日志打印了好几遍,所 ...
- 关于python中的GIL
什么是GIL锁? GIL是Global Interpreter Lock的缩写,GIL中文可以称为全局解释器锁.提及到GIL,我们要知道它是在实现Python解析器(CPython)时所引入的一个概念 ...
- jar包添加到maven本地仓库
操作系统windows 本地要配置过maven环境 cmd 运行命令 mvn install:install-file -Dfile=D:\commons-net-3.6.jar.jar -Dgro ...
- impala和kudu使用的小细节
七堇年:我们要有最朴素的生活与最遥远的梦想 . 即使明日天寒地冻,路远马亡. 加油! 之前入门的小错误总结,建表都会出错,真的好尴尬 还是要做好笔记 第一个错误: error:AnalysisEx ...
- centos 远程授权
centos 远程授权命令 ssh-copy-id root@192.168.15.70
- shell练习题4
需求如下: 系统logrotate工具,可以完成日志切割.归档.写一个shell脚本实现类似功能. 举例:假如服务的输出日志是1.log,要求每天归档一个,1.log第二天就变成1.log.1, 第三 ...
- 使用SSD检测框架训练自己的数据
数据集做好后,训练程序为/examples/ssd/ssd_pascal.py,运行之前,我们需要修改相关路径代码,主要是训练路径的修改和关于自己数据集参数的一些修改. cd /examples/ss ...
- n个骰子的点数之和
题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入n,打印出S的所有可能的值出现的概率. 解题思路:动态规划 第一步,确定问题解的表达式.可将f(n, s) 表示n个骰子点数的和为s的排列 ...