Python中列表的一些方法

Python中列表的常用内置方法

1.向列表的后面追加  list.append()

2. 清空列表 list.clear()

3. 列表复制 list.copy( )  深复制 list.deepcopy()

4. 扩展原列表 list.extend()

5. 获取当前值索引的位置 list.index()  左边的优先找到

6.在列表的指定位置插入指定的元素 list.insert(index,value)

7.删除列表的某个下标值 list.pop()  --通过下标删除   

8.删除列表中的指定的值 list.remove()

9.切片删除列表中的某些值 del li[0:-1]

10. 对列表里的元素进行翻转 li.reverse()

11.对列表里的元素进行排序 li.sort()

1.向列表的后面追加  list.append()

li = [1, 2, "sxxs", "TUTE"]
li.append("hebut")
li.append({"MIA", "xiaodazi"})
# [1, 2, 'sxxs', 'TUTE', 'hebut', {'MIA', 'xiaodazi'}] 
print(li)

2. 清空列表 list.clear()

#清空列表
li = [1, 2, "sxxs", "TUTE"]
li.clear()
# [] 所有的元素被清空
print(li)

3. 列表复制 list.copy( )  深复制 list.deepcopy()

# 浅拷贝  list.copy()   **浅拷贝只能拷贝最外层,修改内层则原列表和新列表都会变化。
#使用列表内置的copy方法,是将新列表中的元素指向了与原列表相同的内存空间。
# 但是,如果列表中嵌套了列表,拷贝后的列表中嵌套的列表元素指针,
# 指向原列表中嵌套列表的整体地址,而不是指向嵌套列表中元素的内存地址。
li = [1, 2, "sxxs",["mia","tute"] ]
lisecond=li.copy()
#对原有的数据进行复制 lisecond= [1, 2, 'sxxs', ['mia', 'tute']]
print("lisecond=",lisecond)
lisecond[3][1]="yc"
#对拷贝后-数据中的列表的修改,影响原有的数据
#li= [1, 2, 'sxxs', ['mia', 'yc']]
print("li=",li)
#lisecond= [1, 2, 'sxxs', ['mia', 'yc']]
print("lisecond=",lisecond)
#深拷贝 lsit.deepcopy() [需要导入 import  copy]  **深拷贝是指将原列表完全克隆一份新的。
import  copy
li = [1, 2, "sxxs",["mia","tute"] ]
lisecond=copy.deepcopy(li)
#[1, 2, 'sxxs', ['mia', 'tute']]
print(lisecond)
lisecond[3][1]="yc"
#li= [1, 2, 'sxxs', ['mia', 'tute']]
print("li=",li) 
#lisecond= [1, 2, 'sxxs', ['mia', 'yc']]   拷贝后的列表修改后不影响原来的
print("lisecond=",lisecond)

4. 扩展原列表 list.extend()

# 扩展原来的列表 参数必须是可迭代的对象
li=[1,2,3,"dada",["hebut","Tute"]]
li.extend(["mia","yue"])
#[1, 2, 3, 'dada', ['hebut', 'Tute'], 'mia', 'yue']  循环出每一个
print(li)

5. 获取当前值索引的位置 list.index()  左边的优先找到

#获取当前值索引的位置 list.index()  左边的优先找到
li=["mia",1,4,8,["hebut","tute"],4,4,8,4]
m=li.index(4)
# 2 找到下标 左边的优先
print(m)
#n=li.index("xiaodazi")
##'xiaodazi' is not in list 列表中没有回报错
#print(n)

6.在列表的指定位置插入指定的元素 list.insert(index,value)

# 在指定索引位置处插入元素
li=["hubut",2,6,3,"mia"]
li.insert(0,"tute")
#['tute', 'hubut', 2, 6, 3, 'mia'] 将字符串tute插在了下标为0的地方
print(li)
#[[...], 'tute', 'hubut', 2, 6, 3, 'mia']  将列表本身插在列表本身下标为0的地方
# 自动转换为插入列表[...]
li.insert(0,li)
print(li)

7.删除列表的某个下标值 list.pop()  --通过下标删除   

# 删除列表的某个值  li.pop()默认删除最后一个
li=["hubut",2,6,3,"mia"]
r=li.pop()
#r= mia
print("r=",r) 
#li= ['hubut', 2, 6, 3] print("li=",li) v=li.pop(1) #2 指定删除第几个元素 如果指定的下标超过索引会报错 print(v) #['hubut', 6, 3] print(li)

8.删除列表中的指定的值 list.remove()

#删除列表中的指定的值
li=["hubut",2,6,3,"mia"]
li.remove(6)
#['hubut', 2, 3, 'mia']  如果要删除的值不在列表内会报错
print(li)

9.切片删除列表中的某些值 del li[0:-1]

li=["hubut",2,6,3,"mia"]
del li[2:-1]
print(li) #['hubut', 2, 'mia'] 左开右闭区间,删除从下标为2开始的元素到倒数第1个元素

10. 对列表里的元素进行翻转 li.reverse()

li=["da","1","mia","tute"]
li.reverse()
print("li=",li)#li= ['tute', 'mia', '1', 'da']

11.对列表里的元素进行排序 li.sort()

#列表排序
li = ["da", "1","b", "z","0","ab","ac"]
li.sort() 
print(li)#['0', '1', 'ab', 'ac', 'b', 'da', 'z'] 按照ASCII码的顺序排列
li.sort(reverse=True) 
print(li)#['z', 'da', 'b', 'ac', 'ab', '1', '0'] 从大到小排列

猜你喜欢

转载自www.cnblogs.com/xiaodazi/p/10015506.html