1. 程式人生 > >05 python 列表(建立列表、索引、切片、拼接、方法)

05 python 列表(建立列表、索引、切片、拼接、方法)

列表是Python中最基本的資料結構。序列中的每個元素都分配一個數字 - 它的位置,或索引,第一個索引是0,第二個索引是1,依此類推。

建立列表

name_list = ["Tom","Marry","Alex"]
print(name_list)
#索引
print(name_list[0])
#切片
print(name_list[2:len(name_list)])

輸出:

['Tom', 'Marry', 'Alex']
輸出列表中索引值為0的元素 Tom
切片 ['Alex']

檢視列表中的方法

>>> dir(list)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>>

刪除列表中的元素

name_list = ["Tom","Marry","Alex"]
del name_list[1]
print(name_list) 

輸出

['Tom', 'Alex']

列表操作符

表示式 說明
len(name_list[1,2,3]) 返回列表長度
[1,2,3]+[1,2,3] 組合列表
[1,2,3]*3 重複列表

列表擷取和拼接

name_list = ["Tom","Marry","Alex","Lisa"]
print(name_list[1])
print(name_list[-1])
print(name_list[1:])

輸出

Marry
Lisa
['Marry', 'Alex', 'Lisa']

巢狀列表
使用巢狀列表即在列表裡建立其它列表,例如:

a=[1,2,3]
b=['a','b','c']
c=[a,b]
print(c)

輸出

[[1, 2, 3], ['a', 'b', 'c']]

python函式

函式 說明
len(list) 返回列表長度
max(list) 返回列表中最大的元素
min(list) 返回列表中的最小值
list(seq) 將元組轉為列表

執行程式碼

tuple1= (2,3,4)
list1 = [1,2,3]
print("列表長度:",len(list1))
print("列表中最大元素:",max(list1))
print("列表中最小元素:",min(list1))
print("講元組轉為list:",list(tuple1))

輸出

列表長度: 3
列表中最大元素: 3
列表中最小元素: 1
將元組轉為list: [2, 3, 4]

列表中的方法

序號 方法 說明
1 list.append(obj) 在列表末尾新增新的物件,name_list = [“Tom”,”Marry”,”Alex”]name_list.append(“thea”)print(name_list)輸出:
2 list.count(obj) 統計某個元素在列表中出現的次數print(name_list)print(name_list.count(“thea”))[‘Tom’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’]2
3 list.extend(seq) 在列表末尾一次性追加另一個序列中的多個值(用新列表擴充套件原來的列表)#擴充套件批量增加name_list.extend(name_list) print(name_list)輸出:[‘Tom’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’]2[‘Tom’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’, ‘Tom’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’]
4 list.index(obj) 從列表中找出某個值第一個匹配項的索引位置print(name_list.index(“thea”))
5 list.insert(index, obj) 將物件插入列表name_list.insert(1,”Lily”)print(name_list)輸出:[‘Tom’, ‘Lily’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’, ‘Tom’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’]
6 list.pop([index=-1]]) 移除列表中的一個元素(預設最後一個元素),並且返回該元素的值#pop一處列表中的一個元素,預設移除結尾的一個元素name_list.pop()print(name_list)輸出:[‘Tom’, ‘Lily’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’, ‘Tom’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’][‘Tom’, ‘Lily’, ‘Marry’, ‘Alex’, ‘thea’, ‘thea’, ‘Tom’, ‘Marry’, ‘Alex’, ‘thea’]
7 list.remove(obj) 移除列表中某個值的第一個匹配項
8 list.reverse() 反向列表中元素name_list.reverse() print(name_list)
9 list.sort(cmp=None, key=None, reverse=False) 對原列表進行排序name_list.sort()print(name_list)
10 list.clear() 清空列表name_list.clear() print(name_list)
11 list.copy() 複製列表

程式碼

name_list = ["Tom","Marry","Alex"]
#print(name_list)

#索引
print(name_list[0])

#切片
#print(name_list[2:len(name_list)])
name_list = ["Tom","Marry","Alex"]

#在列表末尾新增新元素
name_list.append("thea")
print(name_list)

#統計某個元素出現的個數
print(name_list.count("thea"))

#擴充套件批量增加
name_list.extend(name_list)
print(name_list)

#返回元素的第一個索引值
print(name_list.index("thea"))

#在指定位置插入一個元素
name_list.insert(1,"Lily")
print(name_list)

#pop一處列表中的一個元素,預設移除結尾的一個元素
name_list.pop()
print(name_list)

#反向列表中元素
name_list.reverse()
print(name_list)

#排序
name_list.sort()
print(name_list)