列表
1.建立
#建立4×3維列表
x =[[0
for col in
range(3
)]for row in
range(4
)]print
(x,type
(x))
# [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]
x =[[0
]*3for row in
range(4
)]print
(x,type
(x))
# [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]
注意
x = [[0] * 3] * 4 (錯誤)由於list的元素可以是任何物件,因此列表中所儲存的是物件的指標。即使儲存乙個簡單的[1,2,3],也有3個指標和3個整數物件。x = [a] * 4操作中,只是建立4個指向list的引用,所以一旦a改變,x中4個a也會隨之改變。
2.新增元素
list.extend(seq) 在列表末尾一次性追加另乙個序列中的多個值(用新列表擴充套件原來的列表)
3.刪除元素
remove 和 pop 都可以刪除元素,前者是指定具體要刪除的元素,後者是指定乙個索引。
4.列表的其他操作
練習一
# -*- coding: utf-8 -*-
lst =[2
,5,6
,7,8
,9,2
,9,9
]#在列表的末尾增加元素1515)
#在列表的中間位置插入元素20
ind =
len(lst)/2
lst[ind-1]
=20#將列表[2, 5, 6]合併到lst中
lst.extend([2
,5,6
])#移除列表中索引為3的元素
del lst[3]
#翻轉列表裡的所有元素
lst.reverse(
)#對列表裡的元素進行排序,從小到大一次,從大到小一次
lst.sort(
)lst.sort(reverse=
true
)
練習二
leetcode 852. 山脈陣列的峰頂索引
class
solution
(object):
defpeakindexinmountainarray
(self, a)
: lo, hi =0,
len(a)-1
while lo < hi:
mi =
(lo + hi)/2
if a[mi]
< a[mi +1]
: lo = mi +
1else
: hi = mi
return lo
元組
解壓元組
#解壓(unpack)一維元組(有幾個元素左邊括號定義幾個變數)
t =(1,
10.31
,'python'
)(a, b, c)
= tprint
(a, b, c)
# 1 10.31 python
#解壓二維元組(按照元組裡的元組結構來定義變數)
t =(1,
10.31,(
'ok'
,'python'))
(a, b,
(c, d)
)= t
print
(a, b, c, d)
# 1 10.31 ok python
#如果只想要元組其中幾個元素,用萬用字元「*」,英文叫 wildcard,在計算機語言中代表乙個或多個元素。下例就是把多個元素丟給了 rest 變數
t =1,2
,3,4
,5a, b,
*rest, c = t
print
(a, b, c)
# 1 2 5
print
(rest)
# [3, 4]
#如果不在乎 rest 變數,那麼就用萬用字元「*」加上下劃線「_」
t =1,2
,3,4
,5a, b,
*_ = t
print
(a, b)
# 1 2
練習一
# -*- coding: utf-8 -*-
print((
1,2)
*2)print((
1,)*
2)print((
1)*2
)#(1, 2, 1, 2)
#(1, 1)
#2
練習二
拆包: 對於函式中的多個返回資料, 去掉元組, 列表 或者字典 直接獲取裡面資料的過程.
a, b = 1, 2字串#等價於 a,b = (1,2)
字串的常用內建方法
python之路 04 列表 元組
1 增加 2 刪 1.pop 預設從後向前 pop 1 刪除1 位置的元素 2.remove 刪除指定元素 不存在時報錯 3.del 列表 3 用索引或切片刪除 4.clear 清空 3 改 索引修改 改完要塞回去 1.列表 3 把 3 位置的改成 2.列表 1 3 切片修改 3.列表 1 5 2 ...
04 列表和元組
今日主要內容 1.什麼是列表 定義 能裝物件的物件 在python中使用來描述列表,內部元素用逗號隔開.對資料型別沒有要求 列表存在索引和切片.和字串是一樣的.2.相關的增刪改查操作 重點 新增 2.insert 位置,元素 插入指定元素到指定位置 刪除 1.pop index 根據索引刪除 2.r...
Python學習Task04 列表 元組和字串
列表 答 1.lst 2 5,6 7,8 9,2 9,9 15 lst.insert 4,20 lst.extend 2 5,6 lst.pop 3 lst.reverse lst.sort lst.sort reverse true lst 1 4,6 true lst 0 lst 0 2lst ...