zoukankan      html  css  js  c++  java
  • python数据类型(列表List1)

           列表(list)是Python中最常用的内置类型之一,是处理一组有序项目的数据结构,或者说,是一个有序对象的集合。通俗地理解,列表即序列,它是一系列数据的序列。在前文介绍的字符串中,字符串包含的值是一个个字符。而在列表中,值可以是任意类型。列表的值一般也称为列表的元素,通过英文逗号分隔,并包含在方括号内。

    一、列表的特点:

           1.列表是一种无序的、可重复的数据序列,可以随时添加、删除其中的元素。

           2.列表的每个元素都分配一个数字索引,和字符串一样,索引从0开始。

           3.列表使用方括号创建,使用英文逗号分隔元素。

           4.列表元素值可以是任意类型,包括变量(需预先定义赋值)。

           5.使用方括号对列表进行元素访问、切片、修改、删除等操作,开闭合区间为[)形式(取左不取右)。

           6.列表的元素可以是列表(列表的嵌套)。

    二、创建列表

    import math
    
    name = []  # 创建一个空列表
    age = list()  # 创建一个空列表
    info = [3204, 'Jack', True, 3.14, math.pi]  # 创建有5个元素组成的列表 

    三、访问元素

           如果要提取列表中的元素,使用索引是一种方法,将索引值写在变量名后的方括号内,Python的索引是从0开始的。
    print(info[1])
    # Jack
    print(info[5])
    # IndexError: list index out of range
    

      列表的元素可以是任意类型,因此列表可以嵌套列表。

    names = ['zhangsan', 'lisi', ['wangwu', 'zhaoliu'], 'liuqi']
    print(names[2])  # 取索引为2的元素值,值仍为列表
    # ['wangwu', 'zhaoliu']
    print(names[2][1])  # 再取子列表中索引为1的元素值
    # zhaoliu
    

      其它数据类型转列表,比如字符串转列表,元组转列表等等。

    s = 'PYTHON'
    list1 = list(s)
    print(list1)
    # ['P', 'Y', 'T', 'H', 'O', 'N']
    

      

    四、列表的增删改查
     
           1.增
            Python中有3种方法可以为列表添加元素,分别是append()、insert()和extend()。
    • append(element):将元素element添加到列表的末尾。
    nums=[1,2,3,4,5]
    nums.append(6)
    print(nums)    #[1,2,3,4,5,6]
    
    • insert(position, element):将元素element插入列表指定position位置。

    nums=[1,2,3,4,5]
    nums.insert(2,9)
    print(nums)    #[1,2,9,3,4,5]
    
    • extend(list):使用另一个列表作参数,然后把所有的元素添加到一个列表上。
    nums=[1,2,3,4,5]
    nums.entend([8,9])
    print(nums)    #[1,2,3,4,5,8,9]
    

      

           2.删

              Python中有3种方法可以为列表删除元素,分别是pop([index]),remove(element)和del命令。

    • pop([index]):移除索引位置index的元素并返回它的值,如果没有参数,则默认删除和返回最后一个。
    nums=[1,2,3,4,5]
    num=nums.pop()   # num:5  nums:[1,2,3,4]
    nums.pop(1)    # nums:[1,3,4]   
    nums.pop(6)    #索引不存在,报错
    
    • remove(element):移除参数中指定的元素element,如果存在多个同样的值,则移除最左边的。不同于pop(),这个方法不返回任何值。
    nums=[1,2,3,4,5]
    nums.remove(3)
    print[nums]   #[1,2,4,5]
    nums.remove(6) #值不存在,报错
    
    • 另一种方式是使用del命令,del list[0]类似于list.pop(0),但前者不会返回被删除的元素。

    nums=[1,2,3,4,5]
    del nums[1]   #等价于 nums.pop(1)
    
    • 除了上面提到的3种方法,另有clear()方法可以清洗列表,它会清空列表中的所有元素。
    nums.clear()   #  []
    

      

           3.改
              列表是可以修改的,只需对指定的列表元素重新赋值即可。
    nums=[1,3,5,6,9]
    nums[3]=7
    print(nums)   #[1,3,5,7,9]
    

         除了使用自然数进行索引元素,还可以使用负整数进行反向索引,比如nums[-1]也对应着9。

     
           4.查
              列表可以通过 index(element)进行查询,返回元素的索引位置,如果元素不存在,报错。
     
    names=['zhangsan','lisi','wangwu','zhaoliu']
    n=nums.index('wangwu')   #返回元素的索引位置 n:2
    n1=nums.index('huanger')  #报错,元素不存在
    

      

    五、列表的遍历

           1.使用while循环

              为了更有效的输出列表的每个数据,可以使用循环来完成。

    names=['Jack','Rose','Alx']
    length=len(names)  #len() 获取列表长度
    i=0
    while i<length:
        print(names[i])
        i+=1
    

      运行结果:

    Jack
    Rose
    Alx
    

      

           2.使用for循环

              while循环是一种基本的遍历列表数据的方式,但是最常用也是最简单的方式是使用for循环。
     
    names=['Jack','Rose','Alx']
    for name in names:
    print(name)

      运行结果:

    names=['Jack','Rose','Alx']
    for name in names:
        print(name)
    

      

    六、列表推导式

           列表推导式作用是用简单的语法创建一个列表。

    nums=[i for i in range(10)]
    print(nums)  #[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    nums1=[i for i in range(10) if i%2]   # i%2 除2取余为1
    print(nums1)   #[1, 3, 5, 7, 9]
    
    points=[(x,y) for x in range(3,5) for y in range(4,7)]
    print(points)  #[(3, 4), (3, 5), (3, 6), (4, 4), (4, 5), (4, 6)]

  • 相关阅读:
    Python 类和对象
    Python zxing 库解析(条形码二维码识别)
    MFC&Halcon之实时视频监控
    MFC&Halcon之图片显示
    Halcon11与VS2010联合开发
    堆排序程序中的小于等于号问题
    cenos7 u disk install
    UML类图关系表示
    socket http1
    mfc http
  • 原文地址:https://www.cnblogs.com/shixiaoxun/p/14364252.html
Copyright © 2011-2022 走看看