(總結)python 3程序開發指南(三)組合數據類型

1.python提供了5種內置的組合數據類型:bytearray、bytes、list、str、tuple;python

2.元組支持與字符串同樣的分片和步距;express

3.注意元組的此種用法:a,b=(b,a),也就是元組的拆分app

4.Python 的命名元組 -- namedtuple(能夠得到更清晰的表達,就像c中的宏同樣清晰):用法以下:函數

建立 namedtuple測試

1
2
from collections import namedtuple User = namedtuple('User', 'id name fullname')

使用 namedtuplespa

1
admin = User(1, 'admin', 'Administritor')

如今咱們訪問 "admin.id", "admin.name", "admin.fullname" 看看就知道了:code

1
2
3
4
5
6
7
8
In [30]: admin.id Out[30]: 1  In [31]: admin.name Out[31]: 'admin'  In [32]: admin.fullname Out[32]: 'Administritor'
其中尤爲須要注意的是:要想在使用format時表現的一樣清晰易懂,須要使用:

"{manufacturer}{model}".format(**aircraft._asdict)orm

5.list經常使用操做函數:append(),count(),extend()(能保證較高效的添加序列),pop(),remove(),reverse().對象

6.列表內涵須知:若是用列表內涵生成的列表很大,那麼根據須要生成每一個數據項會比一次性生成整個列表更高效。生命週期

7.python提供了兩種集合數據類型:set(可變)和frozenset(不可變)

8.只有可hash運算的對象能夠添加到集合中,可hash運算的對象包含一個__hash__()特殊方法,其返回值在某個對象的整個生命週期內都是相同的,並可使用__seq__方法進行相等性判斷。

9.出dict、list、set之外都是可哈希的;

10.集合中包含的每一個數據項都是獨一無二的,經常使用函數包括:add(),clear(),copy(),discard(),pop(),remove(),isdisjoint()t,它適用於:

(1).進行快速成員關係測試

(2).去重

(3).也可用於刪除不須要的數據項

11.集合內涵的使用:{expression for i in iterable if codition}

12。只有可hash的成員才能夠作dict的key,它和set同樣以任意類型提供其數據項,另外一方面,其每一個鍵相關連的值都是對象引用,字典的鍵是獨一無二的,經常使用方法爲:clear();copy();get(),items(),values(),keys(),pop(),popitem()

13.字典內涵的使用:{keyexpression:valueexpression for key,value in iterable if condition}

14.注意默認字典defaultdict和有序字典的使用OrderedDict()以數據項插入的順序進行存儲。對默認字典調用工廠函數時,將爲遺失的鍵建立默認值。

15.組合數據類型迭代函數包括:all(),any(),min(),max(),sum(),enumerate(),len(),range(),reversed(),sorted(),zip()

16.注意python表達式的這種用法:minimum_length <= len(line) <= maximum_length

相關文章
相關標籤/搜索