上篇:
切片指的是對序列進行擷取,選取序列中的某一段。
切片的語法是:list[start:end]
以冒號分割索引,start代表起點索引,end代表結束點索引。省略start表示以0開始,省略end表示到列表的結尾。注意,區間是左閉右開的!
如果提供的是負整數下標,則從列表的最後開始往頭部查詢。例如-1表示最後乙個元素,-3表示倒數第三個元素。
切片過程中還可以設定步長,以第二個冒號分割,例如list[3:9:2],表示每隔多少距離取乙個元素。
a = [1,2,3,4,5,6,7,8]
a[2:4] [3,4]
a[:7] [1,2,3,4,5,6,7]
a[2:] [3,4,5,6,7,8]
s = a[:] 複製列表
s[1,2,3,4,5,6,7,8]
s.remove(2) 刪除2元素 並不是根據下標進行刪除的
s = [1,3,4,5,6,7,8]
a[-1] 8
a[-5:] [4,5,6,7,8]
a[::-1] 想當於逆序輸出 [8, 7, 6, 5, 4, 3, 2, 1]
a[1:5:2] [2,4]
a = [[1,2,3],[4,5,6],[7,8,9]]
a[0][1]
2a = [[1,2,3],[4,5,6],]
a[2]["k1"]
v1
列表有好幾種遍歷方式:
a = [1,2,3,4,5,6]
for i in a: # 遍歷每乙個元素本身
print(i)
for i in range(len(a)): # 遍歷列表的下標,通過下標取值
print(i, a[i])
x = 9
if x in a: # 進行是否屬於列表成員的判斷。該運算速度非常快。
print("true")
else:
print("false")
方法 作用
count(obj) 統計某個元素在列表**現的次數
extend(seq) 在列表末尾一次性追加另乙個序列中的多個值(用新列表擴充套件原來的列表)
index(obj) 從列表中找出某個值第乙個匹配項的索引位置
insert(index, obj) 將物件插入列表
pop(obj=list[-1]) 移除列表中的乙個元素(預設最後乙個元素),並且返回該元素的值
remove(obj) 移除列表中某個值的第乙個匹配項
reverse() 反向列表中元素
sort([func]) 對原列表進行排序
copy() 複製列表
clear() 清空列表,等於del lis[:]
test = ["a", "b", "c", "d"]
test
["a", "b", "c", "d","a"]
['a', 'b', 'c', ['a']]
-----------------------------------------
test.count() 並不是求列表元素個數,而是求其中乙個元素出現的次數
traceback (most recent call last):
file "", line 1, in lis.count()
typeerror: count() takes exactly one argument (0 given)
test.count("a")
1lis = ['a', 'b', 'c', ['a'], ['a', 'b']]
lis.count('a') # 會出現幾次?
1lis.count(['a'])
1-----------------------------------------
test.extend(["e","f"])
test
["a", "b", "c", "d","a","e","f"]
該函式沒有返回值
extend(iterable) 是將乙個可迭代物件中的每個元素逐個地新增到列表中,可迭代物件中有幾個元素,新增後的列表就比原列表多幾個元素,
該函式的引數必須是可迭代的對 象,改函式沒有返回值
-----------------------------------------
test
["a", "b", "c", "d","a"]
test.index("a")
0test.index("a")
4-----------------------------------------
test.insert(3,"c")
["a", "b", "c", "c","d","a","e","f"]
-----------------------------------------
test.pop()
test
["a", "b", "c", "c","d","a","e"]
test.pop(4) # 根據位置彈出
d-----------------------------------------
test.remove(3) 刪除不是根據下標進行刪除的,刪除是根據鍵值來刪除的
traceback (most recent call last):
file "", line 1, in lis.remove(3)
valueerror: test.remove(x): x not in list
test.remove("e")
-----------------------------------------
test
["a", "b", "c", "c",a","f"]
test.reverse() 逆序輸出
['f', 'a', 'c', 'c', 'b', 'a']
newlist = test.copy()
newlist
['f', 'a', 'c', 'c', 'b', 'a']
newlist.clear() 清空列表
newlist
test.sort()
['a', 'c', 'a', 'b', 'c', 'f'] 按照ascii字元表中數字排序的
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,...