1. 程式人生 > >python學習筆記二:列表

python學習筆記二:列表

列表通過索引讀取資料:

#索引讀取資料
a = [1,2,3]
a[-1]

執行結果:3

列表支援巢狀:

b = [[1,2,3],[4,5,6]]
print(b)

執行結果:[[1, 2, 3], [4, 5, 6]]

列表可以修改:

b = [[1,2,3],[4,5,6]]
b[1][2]=4
print(b)

執行結果:[[1, 2, 3], [4, 5, 4]]

列表的切片:

a = [1,2,3,4,5,6,7]

#正向索引,取前4個元素,步長為1
print(a[0:4:1])
執行結果:[1, 2, 3, 4]

#反向索引
print(a[-1:-4:-1])
執行結果:[7,6,5]

#若取2,4,6,則步長為2
a[1::2]
執行結果:[2,4,6]

列表的新增操作:

#1.加號
a = [1,2,3]
b = [4,5,6]
print(a+b)
print(id(a))
執行結果:[1, 2, 3, 4, 5, 6]
87703240

#2.extend:接受引數b並將引數b的全部元素新增到原有列表中,原地修改列表而不新建列表
a.extend(b)
print(a)
print(id(a))
執行結果:[1, 2, 3, 4, 5, 6]
87703240
#3.append:新增任意物件到列表的末端
a = [1,2,3]
a.append(4)
print(a)
執行結果:[1,2,3,4]

a.append([5,6,7])
print(a)
執行結果:[1,2,3,4,[5,6,7]]
#4.insert:插入任意物件到列表中,可以控制插入位置
a = [1,2,3]
a.insert(1,'ab')
print(a)
執行結果:[1, 'ab', 2, 3]

列表的刪除操作:

#1.del:通過索應刪除指定位置的元素
a = [1,2,3]
del a[0]
print(a)
執行結果:[2,3]
a = [1,2,3]
b = a
del a[:] #刪除物件,並沒刪除地址
print(id(a))
b
執行結果:94939912
[]

 

a = [1,2,3]
b = a
del a #刪除地址,並沒有刪除物件
b
執行結果:[1, 2, 3]
print(id(a))
執行結果:NameError: name 'a' is not defined
#2.remove:移除列表中找到的第一個值,如果沒找到,會報錯
a = [1,2,3,2]
a.remove(2)
print(a)
執行結果:[1,3,2]
#3.pop:返回最後一個元素,並從list中刪除它
a = [1,2,3]
b = a.pop()
print(b)
print(a)
執行結果:3
[1,2]

列表的成員關係:

#in not in可以判斷一個元素是否在列表裡
a = [1,2,3]
print(1 in a)
執行結果:True

print(2 not in a)
執行結果:False

print(3 in a)
執行結果:True

列表推導式:

a = [i*i for i in range(1,6)]
print(a)
執行結果:[1, 4, 9, 16, 25]

#加入判斷語句
b = [i for i in range(1,6) if i%2==1]
print(b)
執行結果:[1, 3, 5]
#生成字串
['the %s' % i for i in range(6)]
執行結果:['the 0', 'the 1', 'the 2', 'the 3', 'the 4', 'the 5']
#生成元組
[(x,y) for x in range(2) for y in range(2)]
執行結果:[(0, 0), (0, 1), (1, 0), (1, 1)]
#生成字典
dict([(x,y) for x in range(2) for y in range(2)])
執行結果:{0: 1, 1: 1}
#其實是先生成了0:0,再生成0:1,後面的鍵0將前面的鍵0覆蓋了

列表的排序翻轉:

#列表的排序和翻轉:是直接修改原列表,返回值為none
a = [1,2,4,3]
b = a.sort()#從小到大
print(a)
print(b)
執行結果:[1, 2, 3, 4]
None

c = a.reverse()#原地翻轉
print(a)
執行結果:[4, 3, 2, 1]

內建list方法:

a = 'abc'
list(a)
執行結果:['a', 'b', 'c']

b = (1,2,3,4)
list(b)
執行結果:[1, 2, 3, 4]