字串建立以後不可修改,而列表可以直接修改元素的值。
列表是乙個類
li =[11
,22,33
,'alex'
],li為列表的物件
以逗號來分割每個元素,列表中的元素可以是數字,也可以是字串,布林值。而且列表
之中可以巢狀列表。
可以通過索引/切片來取到列表的值
比如 li[0:
2]同時支援for,while迴圈
for i in li:
列表的元素支援直接修改(類似鍊錶這樣的不連續的儲存方式,不需要重新開闢記憶體),
但字串不支援直接修改(類似順序表的儲存方式)
刪除方式直接 del li[
1]
同時層層巢狀的列表也可以依次取出元素
支援in操作
型別轉換
s =
'abc'
new_s =
list
(s)print
(new_s)
輸出結果:[
'a',
'b',
'c']
把字串中的每個字元拿出來當作列表元素(內部使用for迴圈的機制)
數字是不可以轉換成列表的,數字也不可以與字元拼接。
列表轉換成字串是需要自己寫for迴圈(列表裡既有字串也有數字時)
li =[11
,22,33
,'134'
,'alex'
]s =
''for i in li :
s = s +
str(i)
print
(s)輸出結果:112233134alex
當列表裡只有字串時直接可以使用join函式
li =
['123'
,'alex'
]v =
''.join(li)
print
(v)輸出結果:123alex
li =
['123'
,'alex'][
'wo'])
'abc'
)print
(li)
輸出結果:
['123'
,'alex',[
'wo'],
'abc'
]li =
['123'
,'alex'][
'12'
,'ab'
,'啦啦啦'])
print
(li)
輸出結果:[
'123'
,'alex',[
'12'
,'ab'
,'啦啦啦'
]]
extend函式:拓展原列表,引數:是可迭代的物件(可以用for迴圈)
li =
['123'
,'alex'
]li.extend(
['12'
,'ab'
,'啦啦啦'])
print
(li)
輸出結果:[
'123'
,'alex'
,'12'
,'ab'
,'啦啦啦'
]li =
['123'
,'alex'
]li.extend(
'啦啦啦'
)print
(li)
輸出結果:[
'123'
,'alex'
,'啦'
,'啦'
,'啦'
]
clear函式:直接清空列表
li.clear(
)print
(li)
copy函式:複製
li =
['123'
,'alex'][
'wo'])
'abc'
)v = li.copy(
)print
(v)輸出結果:[
'123'
,'alex',[
'wo'],
'abc'
]此複製為淺複製
count函式:計算列表的元素出現的次數
li =
['123'
,'alex'
]v = li.count(
'123'
)print
(v)輸出結果:
1count裡面必須有引數,不然會報錯
index函式:找到列表元素的索引
index(value,st,en)
li =
['123'
,'alex'
]v = li.index(
'alex'
)print
(v)輸出結果:1
insert函式:在指定索引位置插入元素
insert(index,value)
li =
['123'
,'alex'
]li.insert(0,
'al'
)print
(li)
輸出結果:
['al'
,'123'
,'alex'
]
pop函式:刪除某個值(1,指定索引 2,如果不給引數,預設是刪除最後乙個),並獲取刪除的值。
li =
['123'
,'alex'
,'ab'
,120
]v = li.pop(3)
print
(v)print
(li)
輸出結果:
120[
'123'
,'alex'
,'ab'
]
remove函式:刪除列表中的指定值,預設左邊優先
li =
['123'
,'alex'
,'ab'
,120
,'123'
]li.remove(
'123'
)print
(li)
輸出結果:
['alex'
,'ab'
,120
,'123'
]
刪除的幾種形式:del的切片和索引,pop,remove,或者直接清空clear
reverse函式:將當前列表的元素翻轉
li =
['alex'
,123,34
,45,'123'
,'abc'
]li.reverse(
)print
(li)
輸出結果:
['abc'
,'123',45
,34,123
,'alex'
]
sort函式:將列表元素進行排序
sort(reverse=true)為從大到小排序
li =
['123'
,'34'
,'45'
,'abc'
]li.sort(reverse=
true
)print
(li)
輸出結果:
['abc'
,'45'
,'34'
,'123'
]li =[11
,33,22
,55,21
]li.sort(reverse=
true
)print
(li)
輸出結果:[55,
33,22,
21,11]
python學習總結day7
01變數的引用 02可變和不可變型別 03區域性變數和全域性變數 01返回值 如果函式返回的型別是元組,小括號可以省略 當看到返回型別沒有小括號時,一定要知道返回的型別是元組 如果函式返回的型別是元組,同時希望單獨的處理元組中的元素,可以使用多個變數,一次接收函式的返回結果,變數與變數之間用逗號分隔...
Python學習筆記 day7 類
物件導向最重要的概念就是類 class 和例項 instance 比如球類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。在python中,定義類是通過class關鍵字 class people object 自定義乙個people類,括號內的objec...
python學習 day7 動態引數
以下內容僅供自己學習使用 usr bin env python coding utf 8 def func args 在形參的位置的 是聚合元組 打包,可以接受任意長度的引數 等同於def func a,b,c,d,e,f,更方便 print args func 1,4,5,6,7,8,645,2,...