python基础知识二 列表、元组、range

时间:2022-01-03 19:50:11

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))