Python基础-07 列表

一、列表的创建

列表有两种创建方法:

  1. 通过list() 来创建

    lis = list()         #创建空列表lis(ctrl+鼠标单击list查看Python源码)
    lis1 = list('str')   #创建一个初始化列表,列表元素为's','t','r'
    lis2 = list([1,2,3])
    lis3 = list((1,2,3))
    lis4 = list({'name':'haha','age’:18})
    

说明:
a. list的参数可以是任意可以迭代的数据类型,如字符串、列表、元组、字典
b. 传入字符串其返回结果为[‘s’,‘t’,‘r’],传入列表和元组其返回结果均为[1,2,3],传入字典其返回结果为字典的键[‘name’,‘age’]
c. 列表的元素可以为任意的数据类型,如整型、浮点型、字符串、列表、数组、字典

  1. 通过[]来创建

    lis = []         #创建一个空列表
    lis1 = [1,2,4]   #初始化列表,列表元素为1,2,4
    

二、访问列表元素

通过索引来访问列表中的元素,列表元素的索引从0开始,最后一个元素的索引值为len(lis)-1。列表名[索引值]访问列表元素,列表元素不能越界,一旦越界,会抛出异常(IndexError: list index out of range)。

     lis = ['a','b','c','d','e','f']
     lis[0]      #获得列表中的第1个元素‘a’
     lis[4]      #获得列表中的第5个元素‘e’
     lis[6]      #列表索引越界抛出异常

三、列表元素的修改

通过对列表元素的重新赋值修改列表元素的值

        lis[0] = 'h'
        print(lis)       #返回['h','b','c','d','e','f']       

不能通过lis[6]=‘g’ 来添加新元素,会报错(IndexError: list assignment index out of range)

四、列表元素的删除

  1. del 方法
    通过del 删除指定的列表元素

     lis = ['a','b','c','d','e','f']
     del  lis[3]
     print (lis)      #返回结果['a','b','c','e','f']
    
  2. remove()方法
    向remove()传入需要删除的指定元素的值,删除第一次出现的指定列表元素

     lis = ['a','b','c','d','e','f']
     lis. remove('c')   #没有返回值
     print (lis)        #返回结果['a','b','d','e','f']
    
  3. pop()方法
    向pop()传入需要删除的指定元素的索引值,弹出指定的列表元素。如果不向pop()传入参数,则默认弹出最后一个列表元素

         lis = ['a','b','c','d','e','f']
         lis. pop()       #返回值为需要删除的元素值
         print (lis)      #返回结果['a','b','c','d','e']
         lis.pop(2)
         print(lis)       #返回结果为['a','b','d','e']
    

五、列表的特殊操作

  1. 列表的组合
    通过“+”来完成列表的组合(拼接),相当于调用列表的__add__()魔术方法

           lis1 = [1,2,3]
           lis2 = [4,5,6]
           lis3 = lis1 + lis2   #相当于lis1.__add__(lis2)
           print(lis3)          #返回结果为[1,2,3,4,5,6]
    
  2. 列表的乘法
    列表与整数相乘,相当于调用__imul__()魔术方法

     lis1 = [1,2,3]
     lis2 = lis1*3          #相当与lis1.__imul__(3)
     print(lis2)            #返回结果为[1,2,3,1,2,3,1,2,3]
    

    不支持列表与列表相乘
    3. 判断元素是否在列表中

          2 in lis1
    
    1. 迭代列表中的元素

         for i in lis:      #i为列表中的每一个元素,lis需要迭代的元素
               print(i)
      

六、列表的常用函数

  1. len() 获得任意一个列表的长度

          lis = [1,2,3,4]
          print(len(lis))        #列表lis的长度,返回值为4
          print(lis.__len__())   #等效于len(lis),列表长度len的魔术方法
    
  2. max() 获得列表元素中的最大值

         lis = [1,2,3,4]
         print(max(lis))         #返回列表lis的最大值4
    
  3. min() 获得列表元素中的最小值

            lis = [1,2,3,4]
            print(min(lis))       #返回列表lis中的最小值1
    
  4. list() 将其他数字类型转换为列表类型

           s = "hello"
           lis = list(s)
           print(lis)        #将字符串s转换为列表类型,返回结果为['h','e','l','l','o']
    

七、列表的排序和反转

  1. 列表的反转 reverse() 实现列表的反转

        lis = [1,2,3,4]
        lis.reverse()
        print(lis)        #返回结果为[4,3,2,1]
    
  2. 列表的排序 sort()实现列表的排序

          lis = [3,2,1,4]
          lis.sort()                  #不传参数,默认为升序
          print(lis)                  #返回结果为[1,2,3,4]
          
          lis.sort(reverse = True)    #传入参数reverse = True,实现列表的降序排序
          print(lis)                  #返回结果为[4,3,2,1]
    
  3. 列表的切片
    列表的切片是指按照列表顺序截取一部分列表元素
    列表切片语法

                  列表名[start:end:step]
    

    start 为所截取的起始列表元素索引,省略则从列表第一个元素开始截取
    end 为所截取的最后一个列表元素索引,省略则一直截取到列表结束
    step 为列表元素截取的步长,步长可以为负(从右到左开始取值)
    注意:
      列表的截取区间为左闭右开。

                lis = ['a','b','c','d','e','f']
                #从索引值为1的元素开始截取直到索引值为3-1的列表元素为止,步长为1
                print(lis[1:3])       #返回结果为['b','c']
                
                #从索引值为1的元素开始截取直到列表结束,步长为2
                print(lis[1::2])      #返回结果为['b','d','f']
                
                #截取列表中的所有元素
                print(lis[:])        #返回结果为['a','b','c','d','e','f']
    

八、列表的内置方法

  1. append() 向列表中添加新的元素可以是任意的数字类型(整型、浮点型、字符串、列表、元组、字典)

         lis = ['a','b','c']
         lis.append('d')        #向列表中加入字符串
         lis.append(['e','f'])   #将列表整体添加到原列表末尾
         print(lis)     #返回结果为['a','b','c','d',['e','f']]
    
  2. extend() 将一个可迭代数据一次性的添加到原列表,其参数值只能有一个

         lis = ['a','b','c']
         lis.extend(['e','f'])
         print(lis)      #返回结果为['a','b','c','e','f']
    
  3. count() 返回列表中某个元素出现的次数

          lis = ['a','b','c','d','a']
          print(count('a'))    #返回列表中某个元素出现的次数,结果为2    
    
  4. index() 返回列表某个指定元素第一次出现的索引值

             lis = ['a','b','c','d','a']
             print(lis.index('a'))      #返回值为0
    
  5. insert() 在列表中的某个元素之前添加一个对象

           lis = ['a','b','c','d']
           lis.insert(2,'f')    #在c之前插入f(2为插入位置的索引,‘f’为插入对象的值)
           print(lis)           #返回结果为['a','b',‘f’,'c','d']
    
  6. copy() 复制列表,将原列表中的元素复制给新的列表

              lis = [1,2,3,4]
              lis1 = lis.copy()
              print(lis1)      #返回结果为[1,2,3,4]
    
  7. clear() 清空列表

                 lis = [1,2,3,4]
                 lis.clear()  #无返回值
                 print(lis)    #返回结果为[]
    

    快捷键
    Ctrl+shift+F10 运行
    Ctrl+鼠标单击 打开Python源代码
    Ctrl+d 复制当前行
    Ctrl+w 选中当前单词(按多次选择多个单词)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值