第四天
列表list
- 初识----特点
- 放任意类型数据 ,存储大量数据
- 有序 索引 切片(步长)
创建列表
- 空列表
L=list()
-
L=list("123121231564sadasdas")
['1', '2', '3', '1', '2', '1', '2', '3', '1', '5', '6', '4', 's', 'a', 'd', 'a', 's', 'd', 'a', 's']
-
列表推导式
-
直接创建
L=["1","2","3"]
索引切片
增删改查
增
- append
L=["大","小","多","少","max"]
#追加
L.append("天天")
print(L.append("天天")) #这样打不出来 None 只是执行了添加的动作
print(L)
不断添加
for i in range(30):
name=input("请输入你的名字:")
L.append(name)
print(L)
当输入"q" 时 退出
# while 1:
for i in range(30):
name=input("请输入你的名字:")
if name.upper()=="Q":
break
else:
L.append(name)
print(L)
-
insert(2,"sasa") #在二位置增加一个"sasa"
-
迭代着增加-------"增加包含的最小元素"
L.extend("abcdefg") -----最小为"a" "b"
['大', '小', '多', '少', 'max', '天天', '天天', 'a', 'b', 'c', 'd', 'e', 'f', 'g']
L.extend["tom",] --------最小为"tom"
['大', '小', '多', '少', 'max', '天天', '天天', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'tom']
删
-
pop-------------按照索引删除
L.pop() 默认删除最后一个
L.pop(2) (返回的是删除元素)
print("L.pop(2)")
-
remove---------------指定元素删除 如有重复的 ,默认删除左数第一个
L.remove("大")
-
clear
L.clear() 清空
-
del-----------按照索引删除 /切片
del L[-1]
del L[0:5:2]
改
L=["大","小","多","少","max"]
-
按照索引去改
L[0]="小" 直接改第一个的内容
L=["小","小","多","少","max"]
-
按切片改
L[2:]="abcd"
L=["小","小","a","b","c","d"]
*加步长
一一对应,改几个 后面就应该是几个元素
L[2:]="abc" [2:] 只有三个元素 所以改"abc"三个元素
查
-
索引
-
切片(步长)
-
for i in L
print(i)
嵌套
#
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# 将列表lis中的"tt"变成大写(用两种方式)。
# 将列表中的数字3变成字符串"100"(用两种方式)。
# 将列表中的字符串"1"变成数字101(用两种方式)。
lis[3][2][1][0]=lis[3][2][1][0].upper()
print(lis)
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[3][2][1][0]="TT"
print(lis)
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[1]="3"
lis[3][2][1][2]="3"
print(lis)
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[1]=str(lis[1])
lis[3][2][1][2]=str(lis[3][2][1][2])
print(lis)
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
lis[-3][-2][-1][-1]=1
print(lis)
# 打印嵌套列表中的每个元素
def Lname(L, level=0):
for yuansu in L:
if isinstance(yuansu, list): # 判断是否为列表
Lname(yuansu, level + 1) # level+1,
else:
for J in range(level):
print('\t', end='')
print(yuansu)
A = ["H1", "H2", 1999, ["hello", "day", ["one", "two"]],"123132",[1]]
Lname(A)
元组
元组初识-------只读
只能查看 不能增删改
tu=(100,"太白",True,[1,2,3])
但是列表里面的可以改
tu[2] [1]= 3
用处: 重要数据 用户名 密码 个人信息 (不想让别人改的数据)
元组拆包 ,用来赋值
a,b=(1,2)
print(a,b)
简单应用
range
顾头不顾腚
类似于列表 自定制数字范围
range(10) 0~9
还有索引
r=range(10)
print(r[1]) #1
步长
打印1~100偶数
for i in range(2,101,2)
print(i)
100~1
for i in range(100,0,-1)
print(i)

浙公网安备 33010602011771号