1. 程式人生 > >4.5Python數據類型(5)之列表類型

4.5Python數據類型(5)之列表類型

方式 一起 range 愛好者 pre 操作 count() 本科 ref

返回總目錄

目錄:

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 元素

(三)列表的額外操作

本小節結束!

返回總目錄

我是張一根,一個機械專業的大學生,一個在讀本科的計算機愛好者,期盼和你一起交流計算機的知識,讓我們在這個大時代裏一起進步。

4.5Python數據類型(5)之列表類型