美文网首页Python基础
[python基础]-06 使用列表和元祖

[python基础]-06 使用列表和元祖

作者: 一点想法 | 来源:发表于2019-07-15 16:25 被阅读0次

    1.列表 list

    列表也是Python的一种数据类型,是可变的数据类型

    1.1 list定义

    1.是一组有序的元素集合(所以给列表指定 一个表示复数的名称是一个不错的选择names scores等等);
    2.元素可以是任意数据类型,可随时添加或删除元素;
    3.通过符号方括号[]定义列表;

    animals = ['cat','dog','duck']  列表通过[]来定义,animals就是一个列表集合
    lists = ['str',355,3.14,True]   列表可以包含任意类型的元素
    
    1.2 如何访问列表中元素
    • 正向访问列表元素
      1.通过索引来访问每一个位置的元素,索引从'0'开始计数
      2列表最后一个元素索引为:len(list)-1,因为索引是从0开始计数
    animals = ['cat','dog','duck'] 
    >>> animals[0]  查询第一个位置元素内容
    cat
    >>> animals[2]  查询第三个元素,即最后一个元素内容
    duck
    >>>animals[3]     当索引超出范围时,Python会跑出异常,如下:
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    IndexError: list index out of range
    
    • 逆向访问列表元素
      1.如果想访问的元素是列表的最后一个元素,除了计算索引值,也可以直接用-1作为索引访问
    animals = ['cat','dog','duck'] 
    >>>animals[-1]
    duck
    可依次类推
    animals[-2]  dog  
    animals[-3]  cat 
    注意:animals[-4]就超出的边界,会报错
    
    1.3 增加及删除列表元素
    1.3.1 增加元素
    • 向列表尾部添加元素 .appned()
    animals = ['cat','dog','duck'] 
    >>>animals.append('fish')    向列表尾部添加一个新的元素fish
    >>>animals
    ['cat','dog','duck','fish']   
    
    • 指定列表位置插入元素 .insert(index,value)
    animals = ['cat','dog','duck']
    >>>animals.insert(1,'butterfuly')  向列表索引为1的位置插入元素butterfuly
     >>>animals
    ['cat','butterfuly','dog','duck']
    
    1.3.2 删除元素

    删除元素 .pop()

    animals = ['cat','dog','duck']
    -1.pop()不传参数,默认删除末尾的元素,并返回该元素的值
    >>>animals.pop()
    'duck'
    >>>animals
    ['cat','dog']
    
    -2. 传入参数.pop(i)
    -传入需要删除元素的索引值
    animals = ['cat','dog','duck']
    >>>animal.pop(0)
    'cat'
    >>>animals
    ['dog','duck']
    
    • 删除元素 使用del语句
    animals = ['cat','dog','duck']
    >>>del animals[1]     tips:这里使用关键字,删除索引为1的元素
    >>>animals
    ['cat','duck']
    
    • 根据元素值删除 remove方法
      1.有时候我们不知道元素的所处的位置,只知道元素的值,那么可以通过remove方法来删除
      2.如果一个元素在列表中出现多次,remove只删除第一个指定的值,可以通过循环来删除所有的值
    >>> names = ['alice','tom','billie']
    >>> names.remove('tom')
    >>> names
    ['alice', 'billie']
    

    1.4 组织列表

    • 使用sort方法对列表进行永久排序
    >>> names = ['alice','tom','Billie','Alan']
    >>> names.sort()
    >>> names
    ['Alan', 'Billie', 'alice', 'tom']
    
    • 使用soretd函数对列表进行临时排序
      1.按照字母的ascii码进行排序
    >>> names = ['alice','tom','Billie','Alan']
    >>> sorted(names)
    ['Alan', 'Billie', 'alice', 'tom']
    >>> names
    ['alice', 'tom', 'Billie', 'Alan']
    
    • 确定列表长度
    >>> names = ['alice','tom','Billie','Alan']
    >>> len(names)
    4
    

    2.元祖 tuple

    元祖和列表非常类似,但是tuple一旦初始化就不能修改

    2.1 元祖的定义

    1.使用()圆括号定义元祖
    2.定义只包含一个元素的元祖,表示方式有一点特殊

    -元祖的定义
    temp = (123,'str1','hello',True)
    -包含单个元素的元祖,为了便于和中括号区分,需要加上,区分
    temp2 = (123,)
    
    2.2 元祖的特点

    1.元祖定义好以后,内部的元素是不可改变的

    temp = (123,'str1','hello',True)
    >>>temp[0]=345
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: 'tuple' object does not support item assignment
    tips:元祖是不可以改变内部的元素,如果强行修改元素内容会报错
    

    3.习题

    下列哪些是元祖类型:
    A T=()
    B P=(1)
    C R=[2]
    D S=(2,)
    E D=(123,'456')

    相关文章

      网友评论

        本文标题:[python基础]-06 使用列表和元祖

        本文链接:https://www.haomeiwen.com/subject/bmrkkctx.html