• 【马士兵】Python基础--06


    Python基础–06

    为什么要使用列表?

    列表就好比C语言中的数组,它可以在这个数组里面保存各种类型的数据,保存的数据更多,所以引入列表,来帮助变量只能保存一个数值的尴尬境地

    a=['hello','world',95,98.5]
    print(a)
    
    • 1
    • 2

    在这个代码里面,list是列表名,保存的id值,然后这个id值可以指向保存里面三个数据的id值,三个数据的id值指向具体数值。

    列表的初始化

    在这里插入图片描述

    lst=['hello','world',98]
    lst2=list(['hello','world',98])
    
    • 1
    • 2

    在这里插入图片描述

    列表的特点

    在这里插入图片描述

    获取列表指定元素的索引、获取指定的元素

    在这里插入图片描述

    获取列表指定元素的索引值

    index(),获取列表指定元素的索引值,是通过list的index方法来获取的.

    index方法使用有以下三个注意点:

    1.index只会返回寻找到第一个的索引值,所以如果列表中有重复元素,index也只会返回第一个

    list1=['hello','adasd','dsadsa','zxcxzc','hello']
    
    print(list1.index('hello'))        #输出为0     #虽然list1列表中有两个hello值,但是只会返回第一个找到的索引值,所以输出为0
    
    • 1
    • 2
    • 3

    2.如果index找不到指定元素,会报错的

    list3=['cx','dsa',9800]
    print(list3.index('hello'))         #输出:ValueError: 'hello' is not in list,这个属于报错,会导致下面的代码无法正常执行
    
    • 1
    • 2

    3.index方法可以指定寻找的序列,index(‘要寻找的值’,x,y),x表示开始寻找的序列,y表示结束寻找的序列

    list4=['sadad','xzc','qewqe','yiuy']
    print(list4.index('qewqe',0,3))               #输出结果为1
    
    • 1
    • 2

    获取列表中的单个元素

    1.可以正向获取,也可以逆向获取,正向获取的时候,从0开始计数,逆向获取的时候,从-N开始计数

    2.如果获取的索引值超过列表的范围,就会报错

    li=['xcz','sadas','xzxz','wqqww']
    
    print(li[1])                #输出第二个数据
    print(li[-1])               #输出最后一个数据
    # print(li[6])              超出列表的范围,所以报错
    
    • 1
    • 2
    • 3
    • 4
    • 5

    获取列表的多个元素

    在这里插入图片描述

    获取多个元素采用切片法,语法格式如下:

    列表名[start:stop:step]

    切片获取的列表为一个新的列表,因为他和旧的列表的id值是不相同的

    lst=[10,20,30,40,50,60,70,80]
    #start=1,stop=6,step=1
    print(lst[1:6:1])#[20, 30, 40, 50, 60]
     
    print('原列表:',id(lst))
    lst2=lst[1:6:1]
    print('切片后列表:',id(lst2))
    # 原列表: 1854183981504
    # 切片后列表: 1854183978304
     
    print(lst[1:6:])
    print(lst[1:6])
    # [20, 30, 40, 50, 60]
    # [20, 30, 40, 50, 60]
     
    print(lst[1:6:2])
    # [20, 40, 60]
    print(lst[:6:2])
    # [10, 30, 50]
    print(lst[1::2])
    # [20, 40, 60, 80]
     
    print(lst[::-1])
    # [80, 70, 60, 50, 40, 30, 20, 10]
    print(lst[7::-1])
    # [80, 70, 60, 50, 40, 30, 20, 10]
    print(lst[6:0:-2])
    # [70, 50, 30]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    列表元素的判断和遍历

    在这里插入图片描述

    lst=[10,20,'python','hello']
    print(10 in lst)
    print(100 in lst)
    print(10 not in lst)
    print(100 not in lst)
    print('python' in lst)
    print('Python' in lst)
     
    for item in lst:
        print(item)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    动态内存申请
    三、飞行和射击
    错误消息 “Column ‘device_id‘ in field list is ambiguous“
    golang 编译器 汉化
    408计算机网络知识点简记 (背诵用
    AAPT: error: resource android:attr/lStar not found
    Ribbon简单使用
    Mysql
    Installing harbor-2.6.2 on openEuler
    LeetCode 179 最大数
  • 原文地址:https://blog.csdn.net/bobby102/article/details/126650473