python基礎資料型別:列表list
概念
由一系列元素組成的 可變 序列 容器
可變:1.有增刪改方法
2.所有的操作會直接作用於原資料
序列:支援索引和切片操作
定義
#列表的定義 ----> list []
#1. 直接建立
list1 = [10,2.3,"hello"]
print(list1)
print(type(list1))
#2.構造法-->本質 透過資料型別轉換獲取到一個列表 list(可迭代物件)
#將字串中的每一個字元作為列表的每一個元素['h','e','l','l','o']
list2 = list("hello123")
print(list2)
print(type(list2))
#3.列表推導式--> 本質 透過迴圈往列表增加資料
#[要新增的資料 迴圈 條件判斷]
#list3 = [i for i in range(1,11)]
list3 = [i**2 for i in range(1,11) if i % 2 == 0]
print(list3)
print(type(list3))
列表增加資料的方法
1 #列表增加資料的方法
2
3 list1 = ["貂蟬",”西施“,”葉慧玲“,”王昭君“,”楊玉環“]
4
5 #append 將資料作為整體新增到列表末尾
6 #語法:列表名.append(資料)
7 list1.append(”彭于晏“)
8 print(list1)
9
10 #insert 將資料作為一個整體新增到指定下標前的位置
11 #語法:列表名.insert(下標,資料)
12 list1.insert(4,”彭于晏“)
13 print(list1)
14
15 #extend 將可迭代物件中的資料進行拆分依次新增到列表尾部
16 list.extend([1,2,3,4,5,6])
17 print(list1)
列表刪除資料的方法
1 #列表刪除資料的方法
2 list1 = ["熊出沒","喜羊羊","超獸武裝","葫蘆娃","天線寶寶","花園寶寶","海綿寶寶","電擊小子"]
3
4 #pop() 刪除指定‘下標對應的資料’:不指定下標預設刪除列表尾部元素:如果下標不存在則報錯
5 #語法:列表名.pop(下標)
6 list1.pop(20)
7 print(list1)
8
9 #remove() 從列表中刪除指定‘元素’:如果元素不存在則報錯
10 #語法:列表名.remove()
11 list1.remove(”元素“)
12 print(list1)
13
14 #clear() 將列表中的元素清空,列表仍然存在
15 #語法:列表名.clear()
16 list1.clear()
17 print(list1)
18
19 #del 刪除列表,列表不存在: 刪除列表中指定下標對應的資料,如果下標不存在則報錯
20 #語法:del 列表名 del 列表名[下標]
21 del list1[60]
22 print(list1)
列表修改資料的方法
# 列表修改資料的方法
list1 = ["熊出沒","喜羊羊","超獸武裝","葫蘆娃","天線寶寶","花園寶寶","海綿寶寶","電擊小子"]
#語法:列表[下標] = 新值
#思路:透過下標找到要修改的資料,重新賦值
list[1] = "灰太狼"
print(list1)
列表查詢資料的方法
#列表查詢資料的方法
#index
#語法“:列表名.index(元素)
#作用:查詢指定元素在整個列表中第一次出現的位置的下標;如果資料不存在則報錯
print(list1.index(“洋洋”))
#count
#語法:列表.count(元素)
#作用:統計元素在整個列表中出現的次數:如果元素不存在則次數為0
print(list1.count(“寶寶”))
列表補充方法
#補充方法:
#len()
#語法:len(列表)
#作用:統計列表的長度 統計列表中元素的個數
print(len(list1))
#in
#語法:元素 in 列表
#作用:判斷元素是否在列表中存在,如果在則返回True,否則返回False
print(“寶寶” in list1)
#not in
#語法:元素 not in 列表
#作用:判斷元素是否不在列表中存在,如果不在則返回True,否則返回False
print(”寶寶“ not in list1)
#列表 + 列表 實現列表中元素的合併
print(list1+[1,2,3,4,5])
#列表 * 數字 實現將列表中元素的個數重複n次
print([1,2,3,4,5] * 3)
迴圈遍歷列表
# 迴圈遍歷列表
list1 = ["貂蟬","西施","葉慧玲","王昭君","楊玉環"]
# for迴圈
# for 臨時變數 in 迴圈變數:
# 程式碼塊
for i in list1:
print(i)
# while迴圈 ---> 迴圈數字(下標) 0 ~ len()-1
# 初始值
# while 條件:
# 程式碼塊
# 步長
num = 0
while num <= len(list1)-1:
# 迴圈num是所有的下標,想要具體下標對應的元素 -->透過下標獲取值 列表[下標]
print(list1[num])
num += 1
列表的排序與反轉
排序
#列表的排序 list1 = [45,89,67,32,14,101] #sort() #語法:列表名.sort(reverse=True) #作用:不指定引數,預設升序排序,指定reverse引數結果為True實現降序排序 list1.sort(reverse=False) print(list1)
反轉
list1 = [45,89,67,32,14,101] #列表的反轉 #第一種方式:切片 列表[::-1] print(list[::-1]) #第二種方式: #reverse() #語法:列表名.reverse() #作用:實現將列表中的元素反轉 list1.reverse() print(list1)
列表巢狀
#列表的巢狀
list1 = [45,"hello",[78,"1","kk"],2.3,"python"]
#將列表中元素小寫“kk”修改為大寫的“KK”
#列表的修改:列表名[下標] = 新值
list1[2][2] = "KK
print(list1)