《python基础教程(第二版)》学习笔记 列表/元组(第2章)
《python基础教程(第二版)》学习笔记 列表/元组(第2章)
序列中的下标从0开始
x='ABC' ==> x[0]='A', x[1]='B', x[2]='C'
负数索引从右边开始。最后一个元素下标是-1;x[-1]='C'
'ABC'[0] ==> 'A'
raw_input("x:")[3] 输入数据当作字符串
列表分片:x[2:5], x[-3:-1], x[-3:], x[:3], x[:] #列表名字[起始下标:结束下标] 注意:尾标的元素不包含在内
列表分片+步长: x[0:10:2], x[8:3:-1], x[::2], x[5::-1] #列表名字[起始下标:结束下标:步长]; 步长为负数时从右向左取。
序列相加:
[1,2]+[3,4] ==> [1, 2, 3, 4]
'ABC' + '123' ==> 'ABC123'
序列乘法(重复):
'ABC'*2 ==> 'ABCABC'
[1,2,3]*2 ==> [1, 2, 3, 1, 2, 3]
None 空值
[] 空序列
初始化序列:x=[None]*3 ==> x=[None, None, None]
成员资格:
'3' in ['1','2','3'] ==> True
'3' in '123' ==> True
元素个数:len([1,2,3]) ==> 3
最大值:max([1,2,3]) ==> 3
最小值:min([1,2,3]) ==> 1
把字符串转为列表:
list('ABC') ==> ['A', 'B', 'C']
连接元素:
x=list('ABC'); '-'.join(x) ==> 'A-B-C' #连接字符.join(列表)
赋值:
x=list('ABC'); x[1]='2' ==> x=['A', '2', 'C']
删除元素:
x=list('ABC'); del x[1] ==> ['A', 'C']
分片赋值:
x=list('ABC'); x[2:2]=list('23') ==> ['A', 'B', '2', '3', 'C'] # 插入新元素
x=list('ABC'); x[1:2]=[] ==> x=['A', 'C'] # 删除元素
列表方法:
x=[1,2]; x.append(3) ==> x=[1, 2, 3] #追加元素
x=[1, 2, 3]; x.count(3) ==> 1 #统计元素出现次数
x=[1, 2, 3]; y=[8,9]; x.extend(y) ==> x=[1, 2, 3, 8, 9] # 把一个序列的元素追加到另外一个序列的末尾
[1,2,3]+[4,5,6] ==> [1,2,3,4,5,6]
[1,2,3,4,5,6].index(4) ==> 3 # 查找一个元素的下标
x=[1,2,3]; x.insert(2,8) ==> x=[1, 2, 8, 3] #插入元素
x=[1,2,3]; x.pop() ==> 3, x=[1, 2] # 返回最后一个元素;并删除最后一个元素
x=[1,2,3]; x.pop(0) ==> 1, x=[2, 3] # 返回下标为0的元素,并删除该元素
x=[1,2,3]; x.remove(2) ==> x=[1, 3] #删除元素2
x=[1,2,3]; x.reverse() ==> x=[3, 2, 1] #倒置列表
x=[9,7,8]; x.sort() ==> x=[7, 8, 9] # 从小到大排序;注意:x.sort()没有返回值
x=[9,7,8]; y=sorted(x) ==> x=[9,7,8] y=[7, 8, 9]
高级排序:
x=[9,7,8]; x.sort(cmp) # 采用cmp函数排序
x=[9,7,8]; x.sort(key=len) # 根据元素的长度排序
x=[9,7,8]; x.sort(reverse=True) # 反向排序;从大到小
元组不能修改;元组中必须有逗号
1,2,3 #三个元素的元组
(1,2,3) #三个元素的元组
() #空元组
1, ==> (1,) #1个元素的元组
(1,) #1个元素的元组
2*(1,) ==> (1, 1) # 元组乘法/重复
tuple([1,2,3]) ==> (1, 2, 3) # 把序列变为元组
tuple('abc') ==> ('a', 'b', 'c') # 把序列变为元组
tuple((1,2,3)) ==> (1, 2, 3)
元组的操作和列表类似,只是元组不能修改;
遍历列表的方法:
for item in thelist:
doSoming(item)
for i in range(len(thelist)):
doSoming(thelist[i])