Python 7天快速入門完整視頻教程:https://www.bilibili.com/video/BV1o84y1Z7J1
Python 列表list
容器
容器是一種可以存儲(chǔ)多個(gè)元素的數(shù)據(jù)類型
Python中的容器有:列表list
,元組tuple
,字符串str
,集合set
,字典dict
列表list
列表是多個(gè)元素的集合
列表的定義
賦值定義
列表變量名稱 = [ 元素1, 元素2, 元素3, 元素4, ... ]
空列表定義
列表變量名稱 = []
列表變量名稱 = list()
我們看下示例:
# 定義一個(gè)有多元素的列表
list1 = ["java", "python", "c"]
print(f"list1={list1},類型:{type(list1)}")
# 定義空列表
list2 = []
list3 = list()
print(f"list2={list2}")
print(f"list3={list3}")
list2 = list1
list3 = list2
print(f"list2={list2}")
print(f"list3={list3}")
# 列表里元素類型沒(méi)有限制
list4 = ["python", 222, 3.14, False]
print(f"list4={list4}")
# 列表里可以嵌套列表
list5 = [[1, 2, 3], [4, 5, 6]]
print(f"list5={list5}")
注意點(diǎn):
-
列表里元素類型沒(méi)有限制
-
列表里可以嵌套列表
作業(yè):用列表定義一個(gè)三維數(shù)組,元素類型是字符串
列表的下標(biāo)索引
我們可以通過(guò)列表的下標(biāo)索引獲取列表元素。
下標(biāo)索引從0開(kāi)始,第一個(gè)元素下標(biāo)索引是0,第二個(gè)元素下標(biāo)索引是1,...第N個(gè)元素下標(biāo)索引是N-1
舉例:
# 定義一個(gè)有多元素的列表
list1 = ["java", "python", "c"]
print(f"list1={list1},類型:{type(list1)}")
# 通過(guò)正向索引獲取列表元素
print(list1[0])
print(list1[1])
print(list1[2])
注意點(diǎn):下標(biāo)不要越界,否則就會(huì)越界錯(cuò)誤
或者通過(guò)反向索引也可以獲取列表元素。索引從-1開(kāi)始,最后一個(gè)元素下標(biāo)索引是-1,倒數(shù)第二個(gè)元素下標(biāo)索引是-2,...倒數(shù)第N個(gè)元素的下標(biāo)索引是-N
舉例:
# 通過(guò)反向索引獲取列表元素
print(list1[-1])
print(list1[-2])
print(list1[-3])
通過(guò)下標(biāo)索引獲取嵌套列表的數(shù)據(jù)
# 列表里可以嵌套列表
list5 = [[1, 2, 3], [4, 5, 6]]
# 獲取第一個(gè)嵌套列表的里面的第二個(gè)元素
print(list5[0][1])
作業(yè):
1,list4 = ["python", 222, 3.14, False] 通過(guò)反向下標(biāo)索引,打印list4所有元素
2,list6 = [[[1, 2], [3, 4]], [[5, 6], [7, 8]]] 通過(guò)正向下標(biāo)索引,打印出元素7
列表的常用方法
列表list對(duì)象提供了很多內(nèi)置方法供我們操作list。我們要掌握常用的list方法。(具體類和對(duì)象,方法我們下一個(gè)章節(jié)詳細(xì)講解)
1,修改指定位置的元素值 語(yǔ)法:列表[下標(biāo)索引]=值
list1 = ["java", "python", "c"]
# 修改指定位置的元素值
list1[1] = "python222"
list1[-1] = "c222"
print(list1)
2,index(元素)方法,查找列表中指定元素的下標(biāo),不存在就報(bào)錯(cuò)
list2 = ["java", "python", "c"]
index = list2.index("python")
print(index)
3,insert(下標(biāo),元素),在指定下標(biāo)位置元素之前,插入元素
list3 = ["java", "python", "c"]
# insert(下標(biāo),元素),在指定下標(biāo)位置元素之前,插入元素
list3.insert(1, "php")
print(list3)
運(yùn)行后結(jié)果:
['java', 'php', 'python', 'c']
4,append(元素),將指定元素,追加到列表的尾部
list4 = ["java", "python", "c"]
# append(元素),將指定元素,追加到列表的尾部
list4.append("php")
print(list4)
運(yùn)行后結(jié)果:
['java', 'python', 'c', 'php']
5,extend(容器),追加容器數(shù)據(jù)到列表最后
list5 = ["java", "python", "c"]
# extend(容器),追加容器數(shù)據(jù)到列表最后
list5.extend(["php", "c#"])
print(list5)
運(yùn)行結(jié)果:
['java', 'python', 'c', 'php', 'c#']
6,del 列表[下標(biāo)] 刪除指定下標(biāo)的元素
list6 = ["java", "python", "c"]
# del 列表[下標(biāo)] 刪除指定下標(biāo)的元素
del list6[1]
print(list6)
運(yùn)行結(jié)果:
['java', 'c']
7,pop(元素下標(biāo)) ,取出元素。從列表中刪除這個(gè)元素,方法返回該元素。(下標(biāo)越界就報(bào)錯(cuò))
list7 = ["java", "python", "c"]
# pop(元素下標(biāo)) ,取出元素。從列表中刪除這個(gè)元素,方法返回該元素
ele = list7.pop(1)
print(list7, ele)
['java', 'c'] python
8,remove(元素),刪除指定元素在列表中的第一個(gè)匹配項(xiàng)
list8 = ["java", "python", "c", "python", "php"]
# remove(元素),刪除指定元素在列表中的第一個(gè)匹配項(xiàng)
list8.remove("python")
print(list8)
['java', 'c', 'python', 'php']
9,clear()清空列表
list9 = ["java", "python", "c"]
# clear()清空列表
list9.clear()
print(list9)
[]
10,count(元素) 統(tǒng)計(jì)某元素在列表中的個(gè)數(shù)
list10 = ["java", "python", "c", "python", "php"]
# count(元素) 統(tǒng)計(jì)某元素在列表中的個(gè)數(shù)
count = list10.count("python")
print(count)
2
11,len(列表),統(tǒng)計(jì)列表內(nèi)一共有多少元素
list11 = ["java", "python", "c", "python", "php"]
# len(列表),統(tǒng)計(jì)列表內(nèi)一共有多少元素
print(len(list11))
5
作業(yè): list = [ 1,3,5,7,9,11,5,9,15 ]
1,定義集合list
2,修改第2個(gè)元素,改成8
3,在第三個(gè)元素之后插入2
4,追加元素17
5,追加列表[ 19,21 ]
6,刪除第6個(gè)元素
7,刪除并取出第7個(gè)元素
8,查找元素5的下標(biāo)
9,統(tǒng)計(jì)9的個(gè)數(shù)
10,統(tǒng)計(jì)列表所有元素個(gè)數(shù)
列表的遍歷
我們假如需要獲取列表的所有元素,我們可以通過(guò)前面學(xué)過(guò)的while或者for循環(huán)遍歷來(lái)獲??;
for循環(huán)案例:
list1 = ["java", "python", "c"]
for ele in list1:
print(ele)
while循環(huán)案例:
i = 0
while i < len(list1):
ele = list1[i]
print(ele)
i += 1