python Day4
1.列表
-
列表初识
-
之前的的三种str、int、bool在有的条件下不够用
- str:存储少量的数据。
- 切片还是对其进行任何操作,获取的内容都是str类型。存储的数据单一。
-
列表和字符串相比的优点在于:
- list["xdad",100,[1,2,3]] 承载任意数据类型,存储大量的数据。
- python常用的容器数据类型。
- 列表是有序的,可索引,切片,步长
-
关于列表切片的小练习
li=[1,3,2,"a",4,"b",5,"c"]
#通过对li列表的切片形成新的列表l1,l1=[1, 3, 2]
print(li[:3])
#通过对li列表的切片形成新的列表l2,l2=['a', 4, 'b']
print(li[3:6])
#通过对li列表的切片形成新的列表l3,l3=[3, 'a', 'b']
print(li[1:6:2])
#通过对li列表的切片形成新的列表l4,l4=['b', 'a', 3]
print(li[-3:-8:-2])
-
-
列表的创建和增删改查
-
列表的创建
-
方式一
ls=[100,"xiaoming"]
-
方式二
l1=list("dasfsaff")
print(l1)
#结果['d', 'a', 's', 'f', 's', 'a', 'f', 'f']
-
-
增
-
方法一 append
#append是在列表的末尾进行追加
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls.append("王大锤")
print(ls)
#结果['孙悟空', '如来佛祖', '小旋风', '菩提老祖', '王大锤'] -
方法二 insert
#insert 通过索引进行插入,也算增加的一种
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls.insert(2,"白龙马")
print(ls)
#结果['孙悟空', '如来佛祖', '白龙马', '小旋风', '菩提老祖'] -
方法三 extend
#extend 通过迭代进行追加,类似先遍历字符串、然后追加
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls.extend("xiaoming")
print(ls)
#结果['孙悟空', '如来佛祖', '小旋风', '菩提老祖', 'x', 'i', 'a', 'o', 'm', 'i', 'n', 'g']
-
-
删
-
方法一 pop
#pop 按照索引的顺序删除 其是有返回值的,返回的是删除的元素
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls.pop(2)
print(ls)
#结果['孙悟空', '如来佛祖', '菩提老祖'] -
方法二 remove
#remove 指定元素删除,如果有重名元素,默认删除从左数第一个
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls.remove("孙悟空")
print(ls)
#结果['如来佛祖', '小旋风', '菩提老祖'] -
方法三 clear
#clear 清空
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls.clear()
print(ls)
#结果 [] -
方法四 del
#del 按照索引和切片删除
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
del ls[1]
print(ls)
#结果 ['孙悟空', '小旋风', '菩提老祖']
-
-
改
-
方法一 按照索引改
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls[0]="四海龙王"
print(ls)
#结果 ['四海龙王', '如来佛祖', '小旋风', '菩提老祖'] -
方法二 按照切片改
#这种改的方法是迭代的,就是对修改字符串进行遍历
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
ls[:2]="四海龙王"
print(ls)
#结果 ['四', '海', '龙', '王', '小旋风', '菩提老祖']
-
-
查
#通过for循环遍历的形式
ls=["孙悟空","如来佛祖","小旋风","菩提老祖"]
for i in ls:
print(i)
#结果 孙悟空 如来佛祖 小旋风 菩提老祖
-
2.元组
-
只读列表。存大量的数据,可以索引,切片(步长)
l1=("四海龙王","齐天大圣","孙悟空",1,3)
-
应用:
重要数据,用户名,密码,个人信息,不想让人改动的一些数据,存在元组中。
-
元组的拆包,分别赋值。
a,b=(12,3)#拆包的过程中多一个少一个都不行
print(a,b)
#结果 12 3
3.range
-
定义:类似于列表,自定制数字范围的数字列表
r=range(10)#类似[0,1,2,3,4,5,6,7,8,9]这样一个列表
-
练习
-
利用for循环,利用range将L1的列表的所有索引依次打印出来
l1=[1,3,45,"ds"]
index=len(l1)
for i in range(index):
print(i)
-