3.6.2 列表
1.列表 -- list
有序,可变,支持索引,用于存储数据(字符串,数字,bool,列表,字典,集合,元组,)。
list1 = []
list1 = ['alex',12,True,'王']#‘,’隔开每个元素
print(list1[0])#获取第一个元素
print(id(list1[0]))#获取第一个元素的内存地址
1.1方法:
1.增加
list1.append(i):追加到列表最后
list1.insert(2,"wusir"):插入到指定位置的前方。尽量不要使用,数据量大时,会影响效率
list1.extend("今天好")#迭代添加,追加一个列表(只能添加可迭代对象)
list1 = ['alex',12,True,'王']
list1.append('i')
print(list1)
list1.insert(2,"wusir")
print(list1)
list1.extend("今天好")
print(list1)
2.删除
list1.pop():弹,默认删除最后一个(可以指定下标删除)
list1.remove():移除,通过元素名字进行删除,只删除指定的元素
list1.remove('alex')
del list1 :可以直接删除整个列表,亦可以删除制定下标,切片删除,步长删除
list1.clear():清空
list1 = ['alex',12,True,'王']
list1.pop()#默认删除最后一个,会有返回值,返回被删除的元素
list1.pop(2)
list1.remove('alex')#移除,通过元素名字进行删除,只删除指定的元素
print(list1)
del list1#直接删除整个列表,释放空间
del list1[0]#删除制定下标
print(list1)
del list1[1:3]#切片删除
print(list1)
del list1[::2]#步长删除
print(list1)
list1.clear()#清空整个列表内容
print(list1)
3.更改:
通过指定索引更改
list1[0] = "123"
通过切片更改
list1[1:2] = "12346"
list1[1:4] = 12,13,14
list1[1:4:2] = "12"
list1[1:2] = ("123",)
当步长不为一时,必须一一对应。
list1 = ['alex',12,True,'王']
list1[0] = '123'
print(list1)
list1[1:2] = ("123",)变成元组添加
print(list1)
list1[1:2] = '123456'
print(list1)
list1[1:4] = 1,12,3
print(list1)
list1[1:4:2] = "12"
print(list1)
4.查
#通过for循环
list1 = ['alex',12,True,'王']
for i in list1:
print(i)
5.列表的嵌套:
list1 = [1,"alex","32",['s',"无聊"]]
print(list1[3][1])
2.元组:tuple
有序,不可变,支持索引,用于存储一些较重要的信息,在配置文件中使用。相当于不可变的列表。
tu1 = (1,"alex",[1,'a'])
for i in tu1:
print(i)
3.range:范围
print(range(0,10,1))#含前不含后,起始默认为0,步长默认为1,也控制方向
print(list(range(10,0,-1)))
pyhton3中的range是一个可迭代的对象,写的是什么,输出就是什么。获取成列表:list(range(0,10))
python2中,range返回的直接是一个列表。xrange和python3中的range是相似的。
#for循环与range打印100~1
for i in range(100,0,-1):
print(i)
#打印奇数
for i in range(1,101,2):
print(i)
join():字符串拼接(可迭代对象)
list1 = ['alex',12,True,'王']
#有数字不行,
print("_".join(list1))