python基础补漏-数据类型2

3,列表

3.1定义

有序可变的容器,可以存放多个不同类型的元素

独有功能

1,追加

list.append("element")

2,批量追加

list.extend(l1) #l1列表中的值逐一追加到list列表中

3,插入

list.insert("索引位置",element)    #如果索引位置写的

4,删除 (慎用)

list.remove("element")

del 语句能进行切片删除;且能删除变量。

clear,是毁灭性的删除,会将列表全部清空

remove,指定元素删除,只能删除第一个同名的元素。

pop ,指定索引删除,只能删除一个,且默认不写索引,有和append相反的功能。

5,在原列表中根据索引踢出某个元素 (根据索引位置踢出)

list.pop(index)

a= [element]

b=a.pop(0)

print(b) =element

print(a) = []

6,清空原列表

list.clear()

7,根据值获取索引(从左到右找到第一个删除) 【慎用,找不到报错】

list.index("element")

8,排序

list.sort() #从小到大排序

list.sort(reverse=True) #从大到小排序

#sort排序原理:将列表的元素字符串转换为unicode编码,再根据码表来排序

9,反转原列表

list.reverse()

公共功能

1,相加

list= [1,2,3]

list1= [4,5,6]

list2=list+list1

print(list2)

list2= [1,2,3,4,5,6]

2,相乘

a= [1]

b=a*2

print(b)   

b= [1,1]

3,运算符in包含

a= [1,2,3,4,5]

if1ina:

pass

4,获取长度

len(list)

5,索引

a= ["1","2","3"]

#读

print(a[0])

a[0] ="1"

#改

a[0] ="4"

print(a)

a= ["4","2","3"]

#删

list= ["1","2","3"]

#删除以后不能取值

dellist[1]

list.remove("1")

#可以取出删掉的值

a=list.pop(2)

print(a)

6,切片

list= ["1","2","3"]

#将前两个元素替换

list[0:2] = [4,5,6]

print(list)

list= [4,5,6,'3']

7,步长

#实现列表的翻转

list= ["1","2","3"]

list[::-1]

#list.reverse()

8,for循环

list= ["1a","1c","2a","1b","2b","1d","2c","2d"]

for item in list:

if item.startswith("1"):

list.remove(item)

print(list)

#list = ['1c', '2a', '2b', '2c', '2d']

#没删干净的原因是在循环过程中,列表元素的索引位置会改变

#但是for循环中的索引还是正常0123来取值,改变索引位置的元素就不会被remove

#正确的处理方法,倒着处理

for index in range(len(list)-1,-1,-1):

#先获取列表中的索引,按照倒序取出元素,再进行if判断循环,这样就不会有遗漏

item = list[index]

if item.startswith("1"):

    list.remove(item)

print(list)

#list = ['2a', '2b', '2c', '2d']xxxxxxxxxx 

list= ["1a","1c","2a","1b","2b","1d","2c","2d"]

for item in list:

if item.startswith("1"):

list.remove(item)

print(list)

#list = ['1c', '2a', '2b', '2c', '2d']

#没删干净的原因是在循环过程中,列表元素的索引位置会改变#但是for循环中的索引还是正常0123来取值,改变索引位置的元素就不会被remove#正确的处理方法,倒着处理for index in range(len(list)-1, -1, -1):    

#先获取列表中的索引,按照倒序取出元素,再进行if判断循环,这样就不会有遗漏    

item=list[index]

if item.startswith("1"):

list.remove(item)

print(list)

#list = ['2a', '2b', '2c', '2d']

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容