• 9 Python基本数据类型---列表


    1 列表的定义和创建

    定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素

    列表的创建

    #方法一
    L1 = [] #定义空列表
    L2 = ['a','b','c','d'] #存4个值,索引为0-3
    L3 = ['abc',['def','ghi']] #嵌套列表
    
    #方法二
    L4 = list()
    

    2 列表的特点和常用操作

    特性: 有序、可变

    列表索引

    常用操作:

    #1、创建
    #方法一
    L1 = [] #定义空列表
    L2 = ['a','b','c','d'] #存4个值,索引为0-3
    L3 = ['abc',['def','ghi']] #嵌套列表
     
    #方法二
    L4 = list()
      
    #2、查询
    >>> L2 = ['a','b','c','d','a','e',1,2]
    >>> L2[2]#通过索引取值
    'c'
    >>> L2[-1]#通过索引从列表右边开始取值
    2
    >>> L2[-2]
    1
    >>> L2.index('a')#返回指定元素的索引值,从左右查找,找到第一个匹配值,则返回
    0
    >>> L2.count('a')#统计指定元素的个数
    2
      
    #3、切片
    >>> L2 = ['a','b','c','d','a','e',1,2]
    >>> L2[0:3]#返回从索引0至3的元素,不包括3,顾头不顾尾
    ['a', 'b', 'c']
    >>> L2[0:-1]#返回从索引0至最后一个值,不包括最后一个值
    ['a', 'b', 'c', 'd', 'a', 'e', 1]
    >>> L2[3:6]#返回从索引3至6的元素
    ['d', 'a', 'e']
    >>> L2[3:]#返回从索引3至最后所有的值
    ['d', 'a', 'e', 1, 2]
    >>> L2[:3]#返回从0至3的值
    ['a', 'b', 'c']
    >>> L2[1:6:2]#返回索引1至6的值,但是步长为6(每隔一个值,取一个值)
    ['b', 'd', 'e']
    >>> L2[:]#返回所有的值
    ['a', 'b', 'c', 'd', 'a', 'e', 1, 2]
    >>> L2[::2]#按步长为2,返回所有的值
    ['a', 'c', 'a', 1]
      
    #4、增加
    >>> L2
    ['a', 'b', 'c', 'd', 'a', 'e', 1, 2]
    >>> L2.append('A')#列表最后面追加A
    >>> L2
    ['a', 'b', 'c', 'd', 'a', 'e', 1, 2, 'A']
    >>> L2.insert(3,'B')#在列表的索引为3的位置,插入一个值B
    >>> L2
    ['a', 'b', 'c', 'B', 'd', 'a', 'e', 1, 2, 'A']
      
    #5、修改
    >>> L2
    ['a', 'b', 'c', 'B', 'd', 'a', 'e', 1, 2, 'A']
    >>> L2[3] = 'Boy'#把索引3的元素修改为Boy
    >>> L2
    ['a', 'b', 'c', 'Boy', 'd', 'a', 'e', 1, 2, 'A']
    >>> L2[4:6] = 'ALEX LI'#把索引4-6的元素改为ALEX LI,不够元素自动增加
    >>> L2
    ['a', 'b', 'c', 'Boy', 'A', 'L', 'E', 'X', ' ', 'L', 'I', 'e', 1, 2, 'A']
      
    #6、删除
    L2
    ['a', 'b', 'c', 'Boy', 'A', 'L', 'E', 'X', ' ', 'L', 'I', 'e', 1, 2, 'A']
    >>> L2.pop()#删除最后一个元素
    'A'
    >>> L2
    ['a', 'b', 'c', 'Boy', 'A', 'L', 'E', 'X', ' ', 'L', 'I', 'e', 1, 2]
    >>> L2.remove('L')#删除从左找到的第一个指定元素
    >>> L2
    ['a', 'b', 'c', 'Boy', 'A', 'E', 'X', ' ', 'L', 'I', 'e', 1, 2]
    >>> del L2[4]#用python的全局的删除方法删除指定元素
    >>> L2
    ['a', 'b', 'c', 'Boy', 'E', 'X', ' ', 'L', 'I', 'e', 1, 2]
    >>> del L2[3:7]#删除多个元素
    >>> L2
    ['a', 'b', 'c', 'L', 'I', 'e', 1, 2]
      
    #7、循环
    L2 = ['a','b','c','d','a','e',1,2]
     
    for i in L2:
        print(i)
     
    #输出
    a
    b
    c
    d
    a
    e
    1
    2
      
    #8、排序
    >>> L2 = ['a','b','A','C','#','!',1,2]
    >>> L2.sort()
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>#不能对包含了str和int的列表进行排序
    TypeError: '<' not supported between instances of 'int' and 'str'
    >>> L2 = ['a','b','A','C','#','!']
    >>> L2.sort()
    >>> L2
    ['!', '#', 'A', 'C', 'a', 'b']
    >>> L2.reverse()#反转
    >>> L2
    ['b', 'a', 'C', 'A', '#', '!']
      
    #9、其他
    >>> L2
    ['b', 'a', 'C', 'A', '#', '!']
    >>> L2.extend([1,2,3,4])#把一个列表,扩展到L2列表
    >>> L2
    ['b', 'a', 'C', 'A', '#', '!', 1, 2, 3, 4]
    >>> L2[2] = ['Alex','Jack','Rain']
    >>> L2
    ['b', 'a', ['Alex', 'Jack', 'Rain'], 'A', '#', '!', 1, 2, 3, 4]
    >>> L2[2][2]#嵌套列表取值
    'Rain'
    >>> L2.clear()#清空列表
    >>> L2
    []
    >>> L2.copy()#后面详细分析
    
  • 相关阅读:
    FFTW使用小结
    CUDA -- 并行计算入门
    CUDA -- 深入理解threadIdx
    QT -- 新建线程的方法(四种办法,很详细,有截图)
    CUDA -- 性能剖析和Visual Profiler
    CUDA -- nvvp无法新建New Session(报错:can't find dependent DLL)
    CUDA -- cuda测试中的计时方式(程序/工具)
    VS/QT -- vs下QT设置.qss
    QT -- float转ushort,用QImage 显示32float格式图像(CV_32FC1)
    QSS -- Qt Widget用样式设置背景不成功的问题
  • 原文地址:https://www.cnblogs.com/shibojie/p/11656306.html
Copyright © 2020-2023  润新知