python基础 Day4

时间:2024-07-16 11:04:38

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)