Python 04-列表、元組

列表數組

表名 = ["name1","name2"]app

print(names[1:3])#切片spa

起始位置包括,結束位置不包括。會取1和2,不取3
names = ["name1","name2","name3","name4"]
print(names)
print(names[1],names[2])
print(names[1:3])#切片
print(names[-1])#取最後一個
print(names[-2:])#取最後兩個
print(names[0:3])#取前兩個

names.append("name5")#向數組裏面插入
names.insert(1,"name6")#向數組1號位置插入
names.insert(3,"name7")#向數組3號位置插入

names[2]="name8"#2號元素改成name8

names.remove("name7")#刪除元素name7
del names[2]#刪除2號元素
names.pop()#默認刪除最後一個,輸入下標就刪除第幾號元素

print(names.index("name1"))#找name1在哪裏
print(names[names.index("name1")])#把name1找到打印出來

names.append("name5")
names.append("name5")
print(names.count("name5"))#統計有多少個name5

names.reverse()#列表反轉

names.sort()#按照首字母順序排序

names2 = [1,2,3,4]
names.extend(names2)#把另外一個列表並過來

names.clear()#列表清空


print(names)

 

淺copy指針

第二個列表只是第一個列表的引用。能夠用來建立聯合帳號,如家庭存款。code

淺copy的三種方式blog

person=['name1',['name2','name3']]排序

1.p1=copy.copy(person)rem

2.p2=person[:]class

3.p3=list(person)import

names = ["name1","name2","name3",["tom","jack"],"name4","name5"]

name2 = names.copy()#只copy第一層列表,第二層存的是指針,打印時候會從指針找原地址
print(names)
print(name2)
names[0]="名字1"
names[3][0]="alex"#name2裏面也改了
print(names)
print(name2)

深copy

import copy
names = ["name1","name2","name3",["tom","jack"],"name4","name5"]

name2 = copy.deepcopy(names)#深copy,徹底copy,第二層列表不跟着變化
print(names)
print(name2)
names[0]="名字1"
names[3][0]="alex"
print(names)
print(name2)

 

names = ["name1","name2","name3",["tom","jack"],"name4","name5"]
print(names[0:-1:2])#start,stop,step

 

元組tuple

只讀列表。一旦建立不能修改。用( )表示。只有兩個方法,count和index。

什麼狀況下用元組?

不能改變值的狀況下。

相關文章
相關標籤/搜索