6)列表型 List
L1 = [iterable] 列表里的成员之间以”,“隔开,成员可以是任意类型。
常用操作(L1 = [1, 2, 3]:
操作 | 功能 | 举例 | 备注 |
---|---|---|---|
copy() | 复制列表 | LL=L1.copy() | LL = [1,2,3] , id(LL) != id(L1) |
index(item) | 获取成员item首次再列表中出现的位置 | ||
extend(list) | 将list列表合并到本列表中 | L1.extend([0, ‘A’]) | L1=[1, 2, 3, 0, ‘A’] |
reverse() | 将列表中的成员逆序排列 | ||
list*n | 将列表list 复制n次形成一个新的列表 | L2=[True, 0] L3 = L2*3 | L3=[True, 0,True, 0,True, 0] |
remove(c) | 删除列表成员c,仅删除一次 | L3.remove(0) | L3 = [True,True, 0,True, 0] |
count(c) | 统计成员c在列表中出现的次数 | L3.count(0) | L3.count(0) = 3 |
sort() | 将列表中成员升序排序 | L1=[1, 2, 3, 0] L1.sort() | L1 = [0, 1, 2 , 3] |
7)元组型 tuple
t1 = (iterable) 元祖成员之间以“,”隔开。元组中只有一个成员时,必须在成员后面跟一个逗号,例t1=(1, )。
元组的操作和列表类似,但是元祖中的元素不能直接修改。
8)字典型 dict
dc1 = {‘a’:1,‘b’:2},字典存储的是键/值对,键与值之间以“:”隔开。字典的建可以是字符串,数组或者元祖,但是不可以是列表,因为列表值可变,不能计算hash值。字典中键唯一,如果键重复,一般保留最后的键/值对,其余的自动丢弃。
操作 | 功能 | 举例 | 备注 |
---|---|---|---|
get(key) | 获取字典中与key对应的值 | dc1.get(‘a’) = 1 | |
get(key, val) | 获取字典中与key对应的值,若不存在返回val | dc1.get(‘c’,0) = 0 | |
keys() | 以列表形式返回字典的键 | dc1.keys() = [‘a’, ‘b’] | |
values() | 以列表形式返回字典的值 | dc1.values() = [1, 2] | |
items() | 以元组的形式返回字典内容 | dc1.items() = [(‘a’, 1),(‘b’, 2)] | |
setdefault(key) | 若字典中无key值,添加key并设值为None,否则返回与key对应的值 | dc1.setdefault(‘c’) = {‘a’:1, ‘b’:2, ‘c’:None} | |
update(dict2) | 把dict2的键/值对更新到当前字典中 | ||
popitem() | 删除末尾键/值对,并以元组形式返回 | ||
pop(key,val) | 删除key键/值对,返回值,若key不存在,返回val | ||
fromkeys(seq, val) | 以序列seq为键,val为值生成字典 | dc2 = dict.fromkeys([‘d’,‘e’], 7) = {‘d’:7, ‘e’:7} | |
max(dict) | 返回最大的键 | ||
min()dict | 返回最小的键 |
9)数组型
python中标准数据类型没有数组,列表可以当作一维数组使用,列表嵌套即可成为多维数组。
python要使用数组,可以通过语句“import array”引入模块array,或者安装第三方库NumPy。
array 数组元素类型
类型 | 字节数 | 说明 |
---|---|---|
b | 1 | 有符号整型 |
B | 1 | 无符号整型 |
u | 2 | UNICODE编码字符 |
h | 2 | 有符号整型 |
H | 2 | 无符号整型 |
i | 4 | 有符号整型 |
I \mathrm{I} I | 4 | 无符号整型 |
l \mathrm{l} l | 8 | 有符号整型 |
L | 8 | 无符号整型 |
q | 8 | 有符号整型 |
Q | 8 | 无符号整型 |
f | 4 | 浮点型 |
d | 8 | 浮点型 |