for循環
range–前閉後開
range(5)–> [0,5)
for i in range(5):
print(i)
for i in range(3,9):
print(i)
for i in range(10,20,2):
print(i)
for i in range(18,8,-3):
print(i)
列表:有序,可修改
a=[]
b=[1,2]
print(a,type(a))
print(b,type(b))
a=[1,‘a’,‘b’,‘c’]
print(a[0],a[1],a[2],a[3])
i=0
while i<len(a):
print(‘第’,i+1,‘個元素爲:’,a[i])
i+=1
for i in range(len(a)):
print(‘第’,i+1,‘個元素爲:’,a[i])
拼接
a=[1,2]
b=[3,4,5]
c=a+b
print©
重複
d=a*3
print(d)
x=a[1]+b[2]
print(x)
切片
#[2:5]–> [2,5),同range,前閉後開
a=[10,20,30,40,50,60,70]
b=a[2:5]
print(b)
print(a) #[10, 20, 30, 40, 50, 60, 70],不改變原列表
a=[‘a’,‘b’,‘c’,1,2,3,4,5]
b=a[2:7:2]
print(b)
b=a[2:]
print(b)
b=a[:3]
print(b)
a=[‘a’,‘b’,‘c’]
for i in range(-1,-len(a)-1,-1):
print(i,’:’,a[i])
‘*’–可變
a,b=[1,2]
print(a)
print(b)
a,*b=[1,2,3,4]
print(a)
print(b)
*a,b=[1,2,3,4]
print(a)
print(b)
追加
a=[1,2,3,4]
a.append(9)
print(a)
擴展,改變原列表
a.append(‘b’)
print(a)
插入,再指定位置插入指定元素
a.insert(2,‘a’)
print(a)
pop()函數–彈出,默認彈出最後一個
b=a.pop()
print(b)
b=a.pop(1)
print(b)
print(a) #[1, 3],原列表改變
remove-- 移除從左到右第一個出現的值爲參數的元素
a=[1,2,3,4,3,7,6]
a.remove(3)
print(a)
del
a=[1,2,3,4,5,6,7]
del a[2]
print(a)
del a
print(a) #報錯,del+列表名,刪除整個列表
修改
a=[3,1,2,4,3,6,7]
a[3]=99
print(a)
reverse – 倒序
a.reverse()
print(a)
sort–默認升序排序
a.sort()
print(a)
reverse=True – 表示降序
a.sort(reverse=True)
print(a)
key=str.lower – 按照小寫進行比較
a=[‘ab’,‘Ab’,‘Bc’]
a.sort(key=str.lower)
print(a) #[‘ab’, ‘Ab’, ‘Bc’]
sorted – 對列表進行排序,並寫入新的列表(不改變原列表)
b=sorted(a)
print(b)
print(a)
count–元素’3’的個數
a=[1,2,3,4,1,1,3,4]
b=a.count(3)
print(b)
index–返回第一次出現元素’4’的索引值
x=a.index(4)
print(x)
#遍歷二維列表
a=[[1,2,3],[4,5,6,7],[8,9],10]
for x in a:
if type(x)!=list:
print(x)
else:
for y in x:
print(y,end=’ ')
print()
輸出3/6/9
print(a[0][2])
print(a[1][2])
print(a[2][1])
賦值 ‘=’
a=[1,2,3]
b=a
a.append(4)
print(a,b)
print(id(a),id(b))
print(a is b)
a=3
b=a
a=5
print(a,b)
‘’’
is和==的區別:
is–判斷的是兩對象是否就是同一個,是通過id來進行判斷的
==–判斷的是值是否相同
‘’’
a=[1,2,3]
b=[1,2,3]
print(a==b)
print(a is b)
a=‘abc’
b=‘abc’
print(id(a))
print(id(b))
賦值,淺拷貝,深拷貝
import copy
a=[1,2,3,[4,5,[10,20]],6]
b=a
c=copy.copy(a)
d=copy.deepcopy(a)
print(a,id(a))
print(b,id(b))
print(c,id©)
print(d,id(d))
a.append(7)
print(a,id(a))
print(b,id(b))
print(c,id©)
print(d,id(d))
a[3].append(99)
print(a,id(a))
print(b,id(b))
print(c,id©)
print(d,id(d))
a[3][2].append(30)
print(a,id(a))
print(b,id(b))
print(c,id©)
print(d,id(d))
元組:有序,不可修改
a=(1,2,3,4)
print(a,type(a))
a[0]=9 #報錯
遍歷
for x in a:
print(x)
i =0
while i<len(a):
print(a[i])
i+=1
切片
print(a[2: :1])
合併、重複
a=(1,2)
b=(3,4)
print(a+b)
print(a*3)
a,b,c=(1,2,3)
print(a)
print(b,c)
* 可變,b會變爲列表
a,*b=(1,2,3,4,5)
print(a)
print(b)
元組不可修改;元組中可修改類型的數據,可修改
a=(1,2,3,[4,5])
a[3].append(99)
print(a)
強制類型轉換 tuple–元組 list–列表
a=[1,2,3]
b=tuple(a)
print(type(b))
c=list(b)
print(type©)
元組中’,'很重要
a=(1)
print(type(a))
a=(1,)
print(type(a))
a=1,2
print(a,type(a))
a=[1]
print(type(a))
#index–查找參數第一次出現的索引值
a=(1,2,3,4)
print(a.index(4))
print(a.index(4,0,3)) #報錯,範圍內沒有 後兩個參數爲查找的範圍,同樣左閉右開
遍歷
name=(‘tom’,‘jerry’,‘趙四’)
for i in name:
print(i)
names=((‘張三’,19),(‘李四’,20),(‘王五’,30))
for x,y in names:
print(x,’:’,y)
enumerate–枚舉
‘’’
(0, 11)
(1, 12)
(2, 13)
(3, ‘a’)
‘’’