4.5Python資料型別(5)之列表型別
阿新 • • 發佈:2018-12-26
目錄:
1.列表的定義
2.列表的常規操作
3.列表的額外操作
(一)列表的定義:
列表的定義 [var1, var2, ……, var n ]
# (1)列表的定義 [var1, var2, ……, var n ] items = ["a", 456, False] name = ["zhangsan", 123, "李四", True, items] print(name, type(name)) --------------輸出------------------ ['zhangsan', 123, '李四', True, ['a', 456, False]] <class 'list'>
(2)快速生成式:
# range列表快速生成 # 語法 range(stop) [0, 1, 2 ... , stop - 1] # range(start, stop[, step]) # [start, start + step, start + 2*step ... <stop] # step預設值是1 num = range(99) print(num) num2 = range(1, 99) print(num2) # 列表式推導式生成 # 語法 [表示式 for 變數 in 列表] # [表示式 for 變數 in 列表 if 條件] # 原始方法: num3 = [1, 2, 3, 4, 5] result_list = [] for i in num3: if i % 2 != 0: result = i**2 result_list.append(result) print(result_list) # 推導式: result_list2 = [j**2 for j in num3] print(result_list2) # 條件推導式: result_list3 = [j**2 for j in num3 if j % 2 != 0] print(result_list3) -----------------輸出--------------------------- range(0, 99) range(1, 99) [1, 9, 25] [1, 4, 9, 16, 25] [1, 9, 25]
(二)列表的常規操作:
(1)增加元素:
# 增list # append 往列表中, 追加一個新的元素 在列表的最後 # 語法 l.append(object) # 引數 object 想要新增的元素 list1 = [1, 2, 3, 4] result1 = list1.append(5) print("追加元素5後:", list1) # insert 往列表中, 追加一個新的元素 在指定索引前面 # 語法 l.insert(index, object) # 引數 index 索引, 到時會插入到這個索引之前 # object 想要新增的元素 list2 = ["a", "b", "c"] list2.insert(1, "x") print("插入'x'後的結果:", list2) # extend 往列表中, 擴充套件另外一個可迭代序列 # 語法 l.extend(iterable) # 引數 iterable 可迭代集合 字串 列表 元組 ... list3 = [1, 2, 3, 4] list3.extend(list2) print("拼接列表後:", list3) # 乘法運算 ["a"] * 3 = ['a', 'a', 'a'] list4 = ["a", "b"] print("列表翻倍後:", list4*2) # 加法運算 ["a"] + ["b", "c"] = ["a", "b", "c"] list5 = ["a"] list6 = ["b", "c"] print("列表相加後:", list5 + list6) ------------------輸出---------------------- 追加元素5後: [1, 2, 3, 4, 5] 插入'x'後的結果: ['a', 'x', 'b', 'c'] 拼接列表後: [1, 2, 3, 4, 'a', 'x', 'b', 'c'] 列表翻倍後: ['a', 'b', 'a', 'b'] 列表相加後: ['a', 'b', 'c']
(1)刪除元素:
# 刪list
# del 可以刪除一個指定元素(物件)
# 語法 del 指定元素 可以刪除整個列表 刪除一個變數 也可以刪除某個元素
list1 = [1, 2, 3, 4, 5]
del list1[1]
print("刪除第2個元素以後:", list1)
# pop 移除並返回列表中指定索引對應元素
# 語法 l.pop(index=-1)
# 引數 index 需要被刪除返回的元素索引 預設是-1 也就對應著列表最後一個元素
list2 = ["a", "b", "c"]
print("刪除的元素是:", list2.pop(1), "原列表改為:", list2)
# remove 移除列表中指定元素
# 語法 l.remove(object)
# 引數 object 需要被刪除的元素
list3 = ["a", "b", "c"]
list3.remove("b")
print("原列表改為:", list3)
------------------輸出----------------------
刪除第2個元素以後: [1, 3, 4, 5]
刪除的元素是: b 原列表改為: ['a', 'c']
原列表改為: ['a', 'c']
(1)改變元素:
# 改list
# names[index] = 666
list1 = [1, 2, 3, 4]
list1[1] = 0
print(list1)
------------------輸出----------------------
[1, 0, 3, 4]
(1)檢視元素:
# 查list
# 獲取單個元素 items[index] 注意負索引
list1 = [1, 2, 3, 4]
print("第2個元素是:", list1[1])
print("-1元素:", list1[-1])
# 獲取元素索引 index()
list2 = ["a", "b", "c"]
print("字元'b'所在的索引:", list2.index("b"))
# 獲取指定元素個數 count()
list3 = [1, "b", 1, 1, 2, 3, 4]
print("list3的元素1的個數是:", list3.count(1))
# 獲取多個元素 切片 items[start:end:step]
list4 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print("切取一部分的元素:", list4[1:8:2])
# 遍歷
# 方式1 根據元素進行遍歷
# for item in list:
# print(item)
list5 = [1, 2, 3, 4, 5]
for i in list5:
print("第", i, "元素", end="")
print("\n")
# 方式2 根據索引進行遍歷
# for index in range(len(list)):
# print(index, list[index])
list6 = ["a", "b", "c", "d", "e"]
for j in range(len(list6)):
print("第", list6[j], "元素", end="")
------------------輸出----------------------
第2個元素是: 2
-1元素: 4
字元'b'所在的索引: 1
list3的元素1的個數是: 3
切取一部分的元素: [2, 4, 6, 8]
第 1 元素第 2 元素第 3 元素第 4 元素第 5 元素
第 a 元素第 b 元素第 c 元素第 d 元素第 e 元素
(三)列表的額外操作
本小節結束!
我是張一根,一個機械專業的大學生,一個在讀本科的計算機愛好者,期盼和你一起交流計算機的知識,讓我們在這個大時代裡一起進步。