Python學習之列表和切片-自己筆記

import copy
author = “Allen Iversion”
names = “ZhangYang Guyun Xiangpeng XuLiangChen”
names =[“4ZhangYang”,”#!XieDi”,”Guyun”,”xXiangpeng”,”XieDi”,”XuLiangChen”]
print(names[0]) #切片 ZhangYang
print(names[1:3]) #切片 [‘Guyun’, ‘Xiangpeng’]
print(names[-2]) #切片 Xiangpeng
print(names[-3:-1]) #切片 [‘Guyun’, ‘Xiangpeng’]
print(names[0:4]) #切片 [‘ZhangYang’, ‘Guyun’, ‘Xiangpeng’, ‘XuLiangChen’]

names = list(range(100))#通過range函數創建一個0-99的數列,組成一個list賦值給m
輸出 [0, 1, 2, 3, 4, 5, 6, ……,99]
print(names[:10])#取前十個數
輸出 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(names[-10:])#取後十個數
輸出 [90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
print(names[10:20])#取前11-20個數
輸出 [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
print(names[:10:2])#前十個數中,每2個數取一個
輸出 [0, 2, 4, 6, 8]
print(names[5:15:3])#第6-15個數中,每3個數取一個
輸出 [5, 8, 11, 14]
print(names[::10])#所有的數中,每10個數取一個
print(names[:])#什麼都不寫,可以原樣複製一個list

names.append(“LeiHaiDong”) # 添加得到後面和java一樣
names.insert(1,”ChenRongHua”) # 指定位置插入
names[2]= “XieDi” # 改 直接找到位置修改
names.remove(“ChenRongHua”) # 直接刪除裏面現在有值的
del names[0] # 刪除下標對應的值
names.pop() # pop也是刪除方法 如果填入下標則和 del names[0] 效果相同,如果不輸入下標則刪除最後一個
print(names)
print(names[names.index(“XieDi”)]) 輸出XieDi這個值在列表中的下標值
print(names.count(“XieDi”)) # 統計列表中有幾個”XieDi”
names.reverse() # 反轉
names.clear()# 清除
names.sort()#排序 排序規則按照 ASCII碼的優先級排序
print(names)
names2 =[1,2,3,4]
names.extend(names2)
del names2 # 刪除 變量
print(names,”\n”,names2)

列表的複製 切片輸出:

淺copy其實就是第二個列表只是第一個列表的引用而已,並不是完全複製
person=[‘name’,[‘saving’,100]]
”’
p1=copy.copy(person)
p2=person[:]
p3=list(person)
”’
p1=person[:]
p2=person[:]

p1[0]=’alex’
p2[0]=’fengjie’

p1[1][1]=50

print(p1)
print(p2)

names =[“4ZhangYang”,”Guyun”,”xXiangpeng”,[“alex”,”jack”],”#!XieDi”,”XuLiangChen”]
淺copy 只copy了第一層第二層列表其實沒有被copy ,只是copy了內存地址(指針),如果names裏面的第二層列表[“alex”,”jack”]被修改了 name2裏面也會被修改
name2=names.copy()
深copy 完全copy過來,單獨的佔有一份內存 平常不推薦使用,因爲會佔用大量的內存
name2 =copy.deepcopy(names);

print(names)
print(name2)
names[2]=”向鵬”
names[3][0]=”ALEX”
print(names)
print(name2)

print(names[0:-1:2]) #切片 [‘4ZhangYang’, ‘向鵬’, ‘#!XieDi’]
print(names[::2])
print(names[:])

循環

for i in names:
print(i)

—–感謝老男孩python教學視頻——

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章