列表是python中最基本也是最常用的資料結構之一。列表中的每個元素都被分配乙個數字作為索引,用來表示該元素在列表內所排在的位置。第乙個元素的索引是0,第二個索引是1,依此類推。
python的列表是乙個有序可重複的元素集合,可巢狀、迭代、修改、分片、追加、刪除,成員判斷。
從資料結構角度看,python的列表是乙個可變長度的順序儲存結構,每乙個位置存放的都是物件的指標。
對於這個列表alist = [1, 「a」, [11,22], ]
,其在記憶體內的儲存方式是這樣的:
建立乙個列表,只要把逗號分隔的不同的資料項使用方括號括起來即可
list = # 定義空列表
list1 = ['physics', 1997, 2000]
list2 = [1, 2, 3]
list3 = ["a", "b", "c"]
列表從0開始為它的每乙個元素順序建立下標索引,直到總長度減一 。要訪問它的某個元素,以方括號加下標值的方式即可。注意要確保索引不越界,一旦訪問的 索引超過範圍,會丟擲異常。所以,一定要記得最後乙個元素的索引是len(list)-1。
>>> lis = ["a", "b", "c"]
>>> lis[0]
'a'>>> lis[1]
'b'>>> lis[2]
'c'>>> lis[3]
traceback (most recent call last):
file "", line 1, in lis[3]
indexerror: list index out of range
直接對元素進行重新賦值。
>>> lis[0]
'a'>>> lis[0] = "d"
>>> lis[0]
'd'
使用del語句或者remove(),pop()方法刪除指定的元素。
>>> lis = ["a", "b", "c"]
>>> del lis[0] # 根據索引刪除
>>> lis
['b', 'c']
>>> lis.remove("b") # 直接根據值進行刪除
>>> lis
['c']
>>> lis.pop() # 彈出最後乙個
'c'>>> lis
語句 結果 描述
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 組合兩個列表
['hi!'] * 4 ['hi!', 'hi!', 'hi!', 'hi!'] 列表的乘法
3 in [1, 2, 3] true 判斷元素是否存在於列表中
for x in [1, 2, 3]: print x, 1 2 3 迭代列表中的每個元素
函式 作用
len(list) 返回列表元素個數,也就是獲取列表長度
max(list) 返回列表元素最大值
min(list) 返回列表元素最小值
list(seq) 將序列轉換為列表
>>> s = list((1, "a", "b", 2))
>>> s
[1, 'a', 'b', 2]
>>> max(s) # 不能混合不同型別進行最大最小求值
traceback (most recent call last):
file "", line 1, in max(s)
typeerror: '>' not supported between instances of 'str' and 'int'
list.reverse() 將列表反轉
list.sort() 排序,預設公升序
如果列表內的元素全為數字,或者字母排序沒有問題。
如果字母和數字都有的情況下,排序會報錯
list.sort(reverse=true) 降序排列
Python 列表 學習筆記
序列是python中基本資料結構。序列中每個元素都分配到乙個數字 它的位置或索引值 第一位索引值是0,第二位是1,以此類推。python有6個序列的內建型別,但最常見的是列表和元組。序列都可以進行的操作包括索引,切片,加,乘,檢查成員。此外,python已經內建確定序列的長度以及確定最大和最小的元素...
Python學習筆記 列表
今天學習了head first python 中文版 這本書的第1章 人人都愛列表,很有意思。好,為了珍惜時間,下邊開始乾巴巴的筆記 1.檢視python版本 1 python v 大寫 檢視python2版本 2 python3 v 3 python3 v 使用小寫v會進入python直譯器,py...
python學習筆記 列表
1 列表 words hello world print words 0 print words 1 print words 2 大多數情況下,列表中的最後一項不會帶逗號。然而,在那裡放置乙個是完全有效的,在某些情況下是鼓勵的。2 列表也可以巢狀在其他列表中。things string 0,1,2,...