本文將重點(diǎn)梳理列表及列表操作。
2.1 list函數(shù)
2.2 基本列表操作
2.3 列表方法
2.1 list函數(shù)
>>>list('hello')
['h','e','l',l','o']
注:list函數(shù)適用于所有類型的序列,而不只是字符串。
2.2 基本列表操作
2.2.1 改變列表:元素賦值
>>>x = [1,3,5]
>>>x[0] = 'a'
>>>x
['a',3,5]
注:不能對(duì)不存在的元素賦值,即x[0]~x[2]存在,可賦值,x[3]不存在,不可賦值。
2.2.2 刪除元素
>>>names = ['jack','bob','tom','alice']
>>>del names[1]
>>>names
['jack','tom','alice']
2.2.3 分片賦值
>>>name = 'anthony'
>>>namelist = list(name)
['a','n','t','h','o','n','y']
#步長(zhǎng)為1時(shí),替換原分片位置為賦值列表
>>>namelist[1:3] = ['a','b','c']
['a', 'a', 'b', 'c', 'h', 'o', 'n', 'y']
#步長(zhǎng)為2時(shí),賦值列表長(zhǎng)度必須與原分片元素?cái)?shù)一致
>>>namelist[::2] = [1,2,3]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: attempt to assign sequence of size 3 to extended slice of size 4
>>>namelist[::2] = [1,2,3,5]
>>>namelist
[1, 'a', 2, 'c', 3, 'o', 5, 'y']
#分片操作可以實(shí)現(xiàn)刪除序列功能
>>>namelist[1:] = []
>>>namelist
['a']
2.3 列表方法
2.3.1 append
#append方法實(shí)現(xiàn)列表末尾追加新的對(duì)象;
>>>lst = ['a','b',4]
>>>lst.append('a')
['a', 'b', 4, 'a']
#直接修改原列表
2.3.2 count
#count方法統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù);
>>>lst.count('a')
2
2.3.3 extend
#extend方法實(shí)現(xiàn)在列表的末尾追加另一個(gè)序列中的多個(gè)值;
>>>lst2 = [1,2,3]
>>>lst.extend(lst2)
>>>lst
['a', 'b', 4, 'a', 1, 2, 3]
#extend方法不同于級(jí)聯(lián)操作”+“,extend方法是在原列表直接修改,而“+”操作是返回一個(gè)新的列表
>>>a = ['a','a','b']
>>>b = [1,2,3]
>>>a+b
['a','a','b',1,2,3]
>>>a
['a','a','b']
2.3.4 index
#index方法用于尋找列表中某個(gè)值第一個(gè)匹配項(xiàng)的索引位置;
>>>names = ['jack','tom','alice','rose','timor']
>>>names.index('jack')
0
>>>names.index('sam')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 'sam' is not in list
2.3.5 insert
#insert方法用于將對(duì)象插入列表中;
>>>numbers = [1,2,3,4,5,6,7]
>>>numbers.insert(3,'a')
>>>numbers
[1,2,3,'a',4,5,6,7]
#同樣可以用分片操作完成
>>>numbers[3:3] = ['a']
[1,2,3,'a','a',4,5,6,7]
2.3.6 pop
#pop方法會(huì)移除列表中的一個(gè)元素(默認(rèn)最后一個(gè));
>>>x = [1,2,3]
>>>x.pop()
3
>>>x
[1,2]
>>>x.pop(0)
1
>>>x
[2]
2.3.7 remove
#remove方法用于移除列表中某個(gè)值的第一個(gè)匹配項(xiàng);
>>>x = ['alice','tome','time','jack']
>>>x.remove('alice')
[tome','time','jack']
2.3.8 reverse
#reverse方法將列表中的元素逆向存放;
>>>x = [1,3,5]
>>>x.reverse()
>>>x
[5,3,1]
2.3.9 sort
#sort方法在原位置進(jìn)行排序;
>>>x = [4,6,9,7,8]
>>>x.sort()
>>>x
[4,6,7,8,9]
#sort方法無(wú)返回值,因此,y = x.sort() 返回值為None
浙公網(wǎng)安備 33010602011771號(hào)