1.python数据类型-列表,平时用列表用的最多,元组比较少一些
2.列表表示:[]
cunqianguan = []
print(type(cunqianguan))
# 一个元素的列表不需要,和元组不一样
cunqianguan = [1]
print(type(cunqianguan))
# 列表取值,获取某一个元素,和字符串操作保持一致都是根据索引取值
j = [1, 2, 3]
print(j[2])
# 列表是可变类型,可以去修改里面的某一个元素的值
cunqianguan = [1, 2]
print(id(cunqianguan))
cunqianguan[0] = 10000
print(cunqianguan)
print(id(cunqianguan)) #上面和下面的cunqianguan打印出的id是一样的,只是改变了值,不改变地址
# 在列表的最后添加一个元素
username = ['yanzi', 'anqi', 'zy', 'cainiao', 'zhangfei']
username.append('岳飞')
print(username) #得到结果['yanzi', 'anqi', 'zy', 'cainiao', 'zhangfei', '岳飞']
# 添加多个元素,可以添加列表也可以添加元组,extend后面不能接单个元素
username.extend(['wangwu', '李总'])
print(username) #得到结果['yanzi', 'anqi', 'zy', 'cainiao', 'zhangfei', '岳飞', 'wangwu', '李总']
username.extend(('dd', 'pp'))
print(username) #得到结果['yanzi', 'anqi', 'zy', 'cainiao', 'zhangfei', '岳飞', 'wangwu', '李总', 'dd', 'pp']
#extend后面不能接单个元素
username.extend(0)
print(username) #报错TypeError: 'int' object is not iterable
# 指定的位置添加元素,在索引为1的位置添加'棒棒冰'
username.insert(1, '棒棒冰')
print(username)
# 删除
# 根据值进行删除,删除找到的第一个元素,只能一个个删除
username.remove("wangwu")
print(username)
# 根据索引删除,删除索引为8的值
username.pop(8)
print(username)
# pop不加索引,就是默认删除最后一个
aa = username.pop() #只有pop删除有返回值,返回的就是被删除的对象,其他的删除都没有返回值
print(username)
print(aa)
# del,根据索引进行删除
del username[7]
print(username)
# 一次性删除多个
del username[4:6]
print(username)
# 删除整个列表的元素
username.clear()
print(username)
# 在内存中删除,这个不建议用
del username
print(username)
# 列表中的元组可以当成整体被修改,如果单独修改元组里面的元素是不可以修改的
name2 = ['yanzi', '6666', 'anqi', ('zy', '岳飞')]
name2[-1] = "9999"
print(name2)
# name2[-1][0] = "888"
# print(name2)
# 修改元组里面的列表是可以进行修改的
name3 = ('yanzi', '6666', 'anqi', ['zy', '岳飞'])
# name3[0] = "yanzi2"
# print(name3)
name3[-1][1] = "777"
print(name3)
# 修改列表中的多个元素,占的位置全部都覆盖
mk = ['yanzi', '6666', 'anqi', '9999']
mk[0:2] = [1, ]
print(mk) #得到结果[1, 'anqi', '9999']
# 反转
mk.reverse()
print(mk) #得到结果['9999', 'anqi', 1]