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
扫描二维码关注公众号,回复: 9156813 查看本文章#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)