day4_list--4.29

本文详细介绍了Python中的列表类型,包括其可变性、有序性以及如何存储不同类型的数据。通过实例展示了列表元素的获取、遍历以及切片操作。此外,还探讨了如何使用切片来一次性获取多个元素。最后,通过一个实际例子统计不及格分数的数量,并计算平均分,进一步巩固了列表操作的理解。
摘要由CSDN通过智能技术生成

list

  1. 什么是列表

    1. 列表是容器型属性类型(是序列):将[]作为容器的标志,里面多个元素用逗号隔开:[元素1,元素2,元素3,…]

    2. 列表是可变的(指的是列表中元素的个数、元素顺序和元素的值可变);列表是有序的(支持下标操作、下标是顺序的标志)

    3. 列表的元素:任何类型的数据都可以作为列表的元素,同一个列表中不同的元素类型可以不同

      list1 = []
      print(list1, type(list1))  # [] <class 'list'>
      
      print([1, 2, 3] == [3, 2, 1])  # False
      print({1, 2, 3} == {3, 2, 1})  # True
      
      list2 = [10, 23.32, 'abc', None, False, [1, 2], {'a': 10}, {1, 3, 5}]
      print(list2)
      
      a = 100
      list3 = [20, a, a * 3, a > 10, a, False, True]
      print(list3)
      
  2. 获取列表中的元素

    1. 获取单个列表

      
      语法:
       列表[下标]  -   获取列表中指定下标对应的元素
      
      说明:
      列表  -   保存列表的变量,也可以直接写列表
      []  -   固定写法
      下标  -   又叫索引;下标就是元素在有序列表中的位置信息.
               元素从前往后对应的下标值从0开始依次增加
               元素从后往前对应的下标值从-1开始依次减小
      
      
      list2 = [10, 23.32, 'abc', None, False, [1, 2], {'a': 10}, {1, 3, 5}]
      print(list2[0])
      
      names = ['百里守约', '瑶', '李白', '白起', '后羿', '曜', '艾琳']
      print(names[1])
      print(names[-5])
      print(names[-1])
      print(names[-3])
      
      
    2. 遍历 一个一个获取列表中的所有元素

      """
      方法一 -   直接获取元素
      for 变量 in 列表:
          循环体
          
      方法二 -   获取列表中所有元素对应下标,通过下标遍历对应元素
      for 下标 in range(len(列表)):
          列表[下标]
          
          
      len(序列) -   获取序列中元素的个数
      """
      
      for name in names:
          print('name', name)
      print('==============================================')
      for index in range(len(names)):
          print(index, names[index])
      print('==============================================')
      for index in range(-1, -len(names) - 1, -1):
          print(index, names[index])
      print('==============================================')
      
      # 练习:统计scores中不及格学生的个数
      scores = [78, 67, 56, 90, 78, 23, 91]
      count = 0
      for score in scores:
          if score < 60:
              count += 1
      print('不及格的人数:', count)
      print(sum(scores) / len(scores))
      
    3. 切片 同时获取多个元素

      """
      a. 基础语法:
      列表[开始下标: 结束下标: 步长]    -   开始下标可以取到,结束下标取不到;
      开始下标可省略(默认为0),结束下标可省略(默认为len(序列)),步长可省略(默认为1),
      
      如果步长为正:从开始下标到结束下标前,从前往后取,取的时候步长为指定步长
      如果步长为负:从开始下标到结束下标前,从后往前取,取的时候步长为指定步长
      
      b. 省略语法
      1) 省略步长:列表[开始下标:结束下标]   -   相当于步长是1
      2) 省略开始下标: 列表[: 结束下标: 步长] / 列表[: 结束下标]
      3) 省略结束下标:  列表[开始下标:: 步长]  /  列表[开始下标:]
      """
      
      print(names)
      name_list = names[1: len(names): 2]
      print(name_list)  # ['瑶', '白起', '曜']
      print(names[: len(names): 2])  # ['百里守约', '李白', '后羿', '艾琳']
      print(names[::])  # ['百里守约', '瑶', '李白', '白起', '后羿', '曜', '艾琳']
      print(names[1: -1]) # ['瑶', '李白', '白起', '后羿', '曜']
      print(names[: 0: -1])   # ['艾琳', '曜', '后羿', '白起', '李白', '瑶']
      print(names[-1:: -1])   # ['艾琳', '曜', '后羿', '白起', '李白', '瑶', '百里守约']
      
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值