1. 程式人生 > >Python學習day04-列表魔法以及相關操作

Python學習day04-列表魔法以及相關操作

一、列表的基本操作

列表: (1)列表中可以儲存任何型別,如:數字、字串、布林值、列表… (2)列表的儲存是不連續的,修改後還是本身列表(類似於C語言的連結串列) ①列表的取值 (1)索引取值

li=[1,2,"a","b"]
print(li[1])	#2

(2)切片取值 切片取值得到的還是一個列表

li=[1,2,"a","b"]
print(li[:3])	#[1, 2, 'a']

(3)for迴圈取值

li=[1,2,"a","b"]
for i in li:
    print(i)	#依次列印li內元素

②列表的修改 (1)通過索引修改

li=[1,2,"a","b"]
li[2]="Hello"
print(li)	#[1, 2, 'Hello', 'b']

(2)通過切片修改

li=[1,2,"a","b"]
li[::2]=['c','d']
print(li)	#['c', 2, 'd', 'b']

③in、not in操作 判斷內容存不存在列表內,返回布林值 只能判斷當前列表的選項,列表選項的子選項內容不能判斷

li=[1,2,"a","b"]
print('a' in li)	#True
print(3 in li)	#False

④列表與字串的轉換 (1)字串===>列表 直接用list強轉,實質上使用for迴圈將字串的內容一個一個放入列表中

s="abcde"
print(list(s))	#['a', 'b', 'c', 'd', 'e']

(2)列表===>字串 當列表中只有字串時:用join方法拼接

li = ["123","alex"]
v = "".join(li)
print(v)	#123alex

當列表中既有數字又有字串時:用for迴圈拼接

li=[1,2,"a","b"]
s = ""
for i in li:
    s+= str(i)
print(s)	#12ab

二、列表的魔法、方法

①元素的新增 (1)append:尾部新增 將引數內的元素作為一個整體新增到列表中

li=[1,2,"a","b"]
li.append("你好")
print(li)	#[1, 2, 'a', 'b', '你好']

(2)extend:尾部新增 將引數內的元素做分割,一個一個放入列表中

li=[1,2,"a","b"]
li.extend("12")
print(li)	#[1, 2, 'a', 'b', '1', '2']

(3)insert:指定索引新增

li=[1,2,"a","b"]
li.insert(1,100)
print(li)	#[1, 100, 2, 'a', 'b']

②元素的刪除 (1)pop 無參時預設從尾部刪除 有引數時:引數為要刪除元素的索引 可以得到刪除的元素

li=[1,2,"a","b"]
v=li.pop(1)
print(li)	#[1, 'a', 'b']
print(v)	#2

(2)remove 刪除引數指定的元素,不能得到刪除的元素

li=[1,2,"a","b"]
li.remove("a")
print(li)	#[1, 2, 'b']

(3)del del可以刪除指定索引下標,也可以以切片方式刪除 注意:當del整個列表時,列表不存在,不能再對列表進行任何操作

li=[1,2,"a","b"]
del li[2]
print(li)	#[1, 2, 'b']
===========================
del li
print(li)	#會出錯

③clear:清空列表 清空後列表仍存在,仍可對列表進行操作

li=[1,2,"a","b"]
li.clear()
print(li)	#[]

④count:得到元素出現的次數

li=[1,2,1,"a","b"]
print(li.count(1))	#2

⑤index:得到元素的索引 有預設引數2,3,分別為start下標、end下標

li=[1,"a",1,"a","b"]
print(li.index('a'))		#1
print(li.index('a',2,5))	#3

⑥copy:列表拷貝 做是淺拷貝

li=[1,"a",1,"a","b"]
v=li.copy()
print(v)	#[1, 'a', 1, 'a', 'b']

⑦reverse:列表倒敘

li=[1,"a",1,"a","b"]
li.reverse()
print(li)	#['b', 'a', 1, 'a', 1]

⑧sort:列表排序 預設為升序,如果想降序可以加引數:reverse=True

li = [11,44, 22, 33, 22]
li.sort()
print(li)	#[11, 22, 22, 33, 44]
li.sort(reverse=True)
print(li)	#[44, 33, 22, 22, 11]