day04-列表(list)

list

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

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

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

    list1 = [] 	# bool值为False
    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) # [10, 23.32, 'abc', None, False, [1, 2], {'a': 10}, {1, 3, 5}]
    
    a = 100
    list3 = [20, a, a * 3, a > 10, a, False, True]
    print(list3) # [20, 100, 300, True, 100, False, True]
    
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])	# 后羿
    # print(names[10])    # IndexError: list index out of range
    
  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)	# 2
    
  3. 切片 - 同时获取多个元素

    """
    a. 基础语法:
    列表[开始下标: 结束下标: 步长]    -   开始下标可以取到,结束下标取不到;开始下标可省略(省略时步长为正默认0,步长为负默认为-1),结束下标可省略(省略时步长为正默认为len(序列),步长为负默认为-len(序列)-1),步长可省略(省略默认为1)
    
    如果步长为正:从开始下标到结束下标前,从前往后取,取的时候步长为指定步长
    如果步长为负:从开始下标到结束下标前,从后往前取,取的时候步长为指定步长
    
    b. 省略语法
    1) 省略步长:列表[开始下标:结束下标]   -   相当于步长是1
    2) 省略开始下标: 列表[: 结束下标: 步长] / 列表[: 结束下标]
    3) 省略结束下标:  列表[开始下标:: 步长]  /  列表[开始下标:]
    """
    
    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、付费专栏及课程。

余额充值