Python中存储系列数据,比较常见的数据类型有list,除此之外,还有tuple数据类型.相比与list,tuple中的元素不可修改,在映射中可以当键使用.tuple元组的item只能通过index访问,collections模块的namedtuple子类不仅可以使用item的index访问item,还可以通过item的name进行访问.可以将namedtuple理解为c中的struct结构,其首先将各个item命名,然后对每个item赋予数据. coordinate = namedtuple…
1.深入理解python中的tuple的功能 基本特性 # 可迭代 name_tuple = ('0bug', '1bug', '2bug') for name in name_tuple: print(name) # 不可变 name_tuple = ('0bug', '1bug', '2bug') name_tuple[0] = 'bug' # TypeError: 'tuple' object does not support item assignment # 不可变不是绝对的 chan…
原文:http://www.zlovezl.cn/articles/collections-in-python/ Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块.比如今天想给大家 介绍的collections 就是一个非常好的例子. 基本介绍 我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型: namedtuple(): 生成可…
python的内建模块collections有几个关键的数据结构,平常在使用的时候,开发者可以直接调用,不需要自己重复制造轮子,这样可以提高开发效率. 1. deque双端队列 平常我们使用的python内置list类的append,extend,pop方法都是从list的尾部执行的(pop()默认弹出最后一个元素).在使用的时候,list很像是一种栈结构(LIFO).不同的是list灵活性更强,在栈的基础上有动态插入的方法,即insert(index,obj)和索引.切片等操作.强大的list…
类实现: class User: def __init__(self, name, age, height): self.name = name self.age = age self.height = height user = User(name="baoshan", age=31, height=170) print(user.name, user.age, user.height) namedtuple实现 方式1: from collections import namedt…
python 模块和包 简单说相当于命名空间 1,python 模块        python模块就是一个文件,里面有函数,变量等 import 模块 模块.方法 from 模块 import function from 模块 import * __name__ =='__main__'    是判断是自己运行模块还是被调用执行 if __name__=='__main__':         print('login主程序运行的')    else:          print('logi…
我们知道tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: p = (1, 2) 但是,看到(1, 2),很难看出这个tuple是用来表示一个坐标的.这时,namedtuple就派上了用场. 用法: namedtuple('名称', [属性list]) 使用namedtuple表示一个坐标的例子如下: from collections import namedtuple Point = namedtuple('Point', ['x', 'y']) p = Point(1, 2)…
1.什么是Lazy-bind模式,Early-bind模式? win32com中,Lazy-bind 模式指的是程序事先不知道对象的任何方法和属性,当对象属性,方法被调用时,程序才向对象发出一个询问(query),如果对方法和属性的询问成功,则调用成功,而Early-bind则是指程序事先知道对象的方法,属性.Python 用makepy 来支持early-bind 模式.makepy是一个位于win32com模块中的一个.py文件(位于python的site-packages/win32com…
转载自:http://hi.baidu.com/tjuer/item/ba37ac4ce7482a0f6dc2f08b 模块包: 包通常总是一个目录,目录下为首的一个文件便是 __init__.py.然后是一些模块文件和子目录,假如子目录中也有 __init__.py 那么它就是这个包的子包了.差不多就像这样吧: Package1/ __init__.py Module1.py Module2.py Package2/ __init__.py Module1.py Module2.py 我们可以…
from NumPy import * 函数形式: tile(A,rep) 功能:重复A的各个维度 参数类型: - A: Array类的都可以 - rep:A沿着各个维度重复的次数 这个英文单词的本意是:贴瓷砖,还挺形象的. 举例: tile([17,29],2),如果rep参数是一个整数,则表示重复A中的元素rep次,即行数(即维度)只有1维,所以2的意思是在“列”这个维度上重复2次 输出[17,29,17,29] tile([29,17],(3,5)) 此时的(3,5)和[3,5]是相同的效…
Counter类(dict的子类, 计数器) 方法 返回值类型 说明 __init__ Counter 传入可迭代对象, 会对对象中的值进行计数, 值为键, 计数为值 .elements() 迭代器 返回一个迭代器, 对元素重复迭代其计数次(小于1则被忽略), 顺序随机 .most_common([n]) list 以[(值, 计数次), ...]的形式并从计数大小返回前n个值(相同次数的顺序随机) .subtract([iterable]) Counter 从一个迭代器或另一个计数器中减去元素…
比如我们导入一个数学计算的模块 math: >>> import math>>> print math<module 'math' (built-in)>>>>>>> print math.pi #导出圆周率的值3.14159265359>>> 我们导入math模块,在python模块学习中我们会知道,这样做会得到名math的对象,这个模块对象包含了pi这样的常量,以及一些其它的方法. 我们如果直接访问…
  namedtuple顾名思义,就是名字+元组的数据结构,下面就来看一下Python的collections模块中namedtuple结构使用示例 namedtuple 就是命名的 tuple,比较像 C 语言中 struct.一般情况下的 tuple 是 (item1, item2, item3,...),所有的 item 都只能按照 index 访问,没有明确的称呼,而 namedtuple 就是事先把这些 item 命名,以后可以方便访问. ? 1 2 3 4 5 6 7 8 9 10…
大家可能很熟悉在collections模块中有一个很好用的扩展数据类型-namedtuple. 如果你还不知道这个类型,那么请翻看标准手册. 我利用元类轻松定义一个namedtuple. 先把代码贴上,满足心急的朋友. def myNamedTuple(tuple_name, attrs_str): attrs_set = set(attrs_str.split(' ')) def __init__(self, attrs): #我们将来实例初始化的时候需要调用的方法. for key, val…
列出目录下所有文件 os.listdir('dirname'):列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式返回. 创建文件夹: os.mkdir('文件夹')    创建文件夹 os.makedirs('文件夹1/文件夹2')    递归创建文件夹 删除文件夹: os.rmdir('文件夹路径')    删除文件夹(只能删除空目录,有文件不能删除) os.removedirs('文件夹路径')  递归删除到根目录(只能删除空目录,目录里不能有文件) 和文件相关 os.remov…
官方文档:https://yiyibooks.cn/xx/python_352/library/collections.html 参考: https://blog.csdn.net/songfreeman/article/details/50502194 https://www.cnblogs.com/Eva-J/articles/7228075.html#_label15 Collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还…
collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict.namedtuple.OrderedDict等. namedtuple: 生成可以使用名字来访问元素内容的tuple # tuple可以用来表示一个坐标 from collections import namedtuple point = namedtuple('poi',['x','y','z']…
namedtuple:namedtuple类位于collections模块,有了namedtuple后通过属性访问数据能够让我们的代码更加的直观更好维护.namedtuple能够用来创建类似于元祖的数据类型,除了能够用索引来访问数据,能够迭代,还能够方便的通过属性名来访问数据.在python中,传统的tuple类似于数组,只能通过下表来访问各个元素,我们还需要注释每个下表代表什么数据.通过使用namedtuple,每哥元素有了自己的名字.类似于C语言中的struct,这样数据的意义就可以一目了然…
Collections 模块 知识点 Counter 类 defaultdict 类 namedtuple 类 在这个实验我们会学习 Collections 模块.这个模块实现了一些很好的数据结构,它们能帮助你解决各种实际问题. >>> import collections 这是如何导入这个模块,现在我们来看看其中的一些类. 1. Counter Counter 是一个有助于 hashable 对象计数的 dict 子类.它是一个无序的集合,其中 hashable 对象的元素存储为字典的…
python中的time和datetime模块是时间方面的模块 time模块中时间表现的格式主要有三种: 1.timestamp:时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量 2.struct_time:时间元组,共有九个元素组. 3.format time :格式化时间,已格式化的结构使时间更具可读性.包括自定义格式和固定格式. 2.格式化字符串时间: 格式化的时间字符串(Format String): ‘1999-12-06’ python中时间日期格式化符…
认识模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译为共享库或DLL的C或C++扩展 3 包好一组模块的包 4 使用C编写并链接到python解释器的内置模块 为何要使用模块? 如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过py…
[转]python模块分析之collections(六) collections是Python内建的一个集合模块,提供了许多有用的集合类. 系列文章 python模块分析之random(一) python模块分析之hashlib加密(二) python模块分析之typing(三) python模块分析之logging日志(四) python模块分析之unittest测试(五) python模块分析之collections(六) OrderedDict 有序字典,相当于键值对列表:按照创建时的顺序…
1.昨日内容回顾 1.正则表达式     # 正则表达式 —— str           # 检测字符串是否符合要求     # 从大段的文字中找到符合要求的内容 1).元字符 #. # 匹配除换行符以外的所有字符 # \n,\t,\b # \w,\s,\d    \W,\S,\D    # ^,$ # ab|a,()   #  [...],[^...] 2).量词 # * # + # ? # {n} # {n,} # {n,m} 3).贪婪匹配和惰性匹配      .*?x  惰性匹配 4)…
#  2  collections 是Python内建的一个集合模块,提供了许多有用的集合类. # 2.1 namedtuple #tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: p=(1,2) #但是看到(1,2),很难看出这个tuple是用来表示一个坐标的.定义一个class又小题大做了,这时,namedtuple就派上用场了 from collections import namedtuple Point=namedtuple('Point',['x','y']) p=P…
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代码段. 把相关的代码分配到一个模块里能让你的代码更好用,更易懂. 模块能定义函数,类和变量,模块里也能包含可执行的代码. 例子 下例是个简单的模块 support.py: support.py 模块: def print_func( par ): print ("Hello : ", par) return…
collections模块基本介绍 我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型: 1.namedtuple(): 生成可以使用名字来访问元素内容的tuple子类2.deque: 双端队列,可以快速的从另外一侧追加和推出对象3.Counter: 计数器,主要用来计数4.OrderedDict: 有序字典5.defaultdict: 带有默认值的字典 n…
Python(collections模块,re模块) 一.collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict.namedtuple和OrderedDict等. namedtuple: 生成可以使用名字来访问元素内容的tuple 我们知道tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: >>> p = (1, 2) 但是,看到(…
collections是Python内建的一个集合模块,提供了许多有用的集合类. namedtuple 我们知道tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: >>> p = (1, 2) 但是,看到(1, 2),很难看出这个tuple是用来表示一个坐标的. 定义一个class又小题大做了,这时,namedtuple就派上了用场: >>> from collections import namedtuple >>> Point = n…
Python模块02/序列化/os模块/sys模块/haslib加密/collections 内容大纲 1.序列化 2.os模块 3.sys模块 4.haslib加密 5.collections 1.序列化 1.1 什么是序列化 # 什么是序列化 -- json 序列化模块就是将一个常见的数据结构转化成一个特殊的序列,并且这个特殊的序列还可以反解回去.它的主要用途:文件读写数据,网络传输数据. # lit = [1,22,3,3,45] # [1,22,3,3,45] # s_lst = str…
defaultdict()和namedtuple()是collections模块里面2个很实用的扩展类型.一个继承自dict系统内置类型,一个继承自tuple系统内置类型.在扩展的同时都添加了额外的很酷的特性,而且在特定的场合都很实用. defaultdict() 定义以及作用 返回一个和dictionary类似的对象,和dict不同主要体现在2个方面: 可以指定key对应的value的类型. 不必为默认值担心,换句话说就是不必担心有key没有value这回事.总会有默认的value. 示例 d…