• 列表和元组


    列表、元组操作

    列表和元组可以包含多个值,这样编写程序来处理⼤量数据就变得更容易。

    定义列表

    列表是python中的基础数据类型之一,列表⽤左⽅括号开始,右⽅括号结束,即[]。列表中的值也称为“表项”。表项⽤逗号分隔(就是说,它们是“逗号分隔的”)。

    list = ['cat','dog','food','eat']
    

    用列表的下标取值

    列表中第⼀个值的下标是0,第⼆个值的下标是 1,第三个值的下标是2,依此类推。

    虽然下标从0开始并向上增长,但也可以⽤负整数作为下标。整数值 −1指的是列表中的最后⼀个下标,−2指的是列表中倒数第⼆个下标,以此类推。

    注意:如果使⽤的下标超出了列表中值的个数,Python将给出IndexError出错 信息。

    >>>list[0]
    'cat'
    >>>list[3]
    'eat'
    >>>list[-1]
    'eat'
    list[-2]
    'food'

    利用切片取得子列表

    就像下标可以从列表中取得单个值⼀样,“切⽚”可以从列表中取得多 个值,结果是⼀个新列表

    在⼀个切⽚中,第⼀个整数是切⽚开始处的下标。第⼆个整数是切⽚ 结束处的下标。切⽚向上增长,直⾄第⼆个下标的值,但不包括它。

    list[2]是⼀个列表和下标(⼀个字符串)'food'
    list[0:2]是⼀个列表和切⽚(两个字符串)['cat','dog']
    

    作为快捷⽅法,你可以省略切⽚中冒号两边的⼀个下标或两个下标。 省略第⼀个下标相当于使⽤0,或列表的开始。省略第⼆个下标相当于使⽤ 列表的长度,意味着分⽚直⾄列表的末尾。

    >>>list[:2]
    ['cat','dog']
    >>>list[1:]
    ['dog','food','eat']
    

      

    用下标改变列表中的值

    list['cat','dog','food','eat']
    >>>list[2] = 'bigbiglove'
    >>>list
    ['cat','dog','food','bigbiglove']

      

    适用于列表的操作

    删除

    del可以删除一个列表或一个变量

    pop()方法可以按索引删,默认删除最后一个,有返回值

    remove()方法可以按元素删除(只要你记得该列表里面有何元素),有返回值

    clear()方法删除整个列表

    list['cat','dog','food','eat']
    
    >>>del list[2]
    list['cat','dog','eat']
    
    >>>list.pop(2)
    list['cat','dog','eat']
    
    >>>list.remove('food')
    list['cat','dog','eat']
    
    >>>list.clear()
    list[]

      

    添加

    append()方法添加到最后

    insert()方法在索引之前插入元素

    list['cat','dog','food','eat']
    
    >>>list.append('China')
    list['cat','dog','food','eat','China']
    
    >>>list.insert(1,'China')
    list['cat','China','dog','food','eat']
    

      

    查找

    这是最简洁且节省空间的代码

    for i in list:
        print(i)
    

      

    排序

    从小到大排序

    li=[0,1,2,6,5]
    
    #从小到大排序
    >>>li.sort()
    [0,1,2,5,6]
    
    #从大到小排序
    li.sort(reverse=True)
    [6,5,2,1,0]
    
    #补充反转
    li.reverse()
    print(li)-->[5,6,2,1,0]
    

      

    len()方法

    用于计算列表中元素的个数

    list = ('cat','dog','food','eat')
    
    >>>len(list)
    4
    

      

    index方法

    很多时候我们需要在列表中查找某个元素并输出对应的索引值

    index() 函数用于从列表中找出某个值第一个匹配项的索引位置

    list.index(obj)
    #obj —— 要查找的对象。
    返回值:
    该方法返回查找对象的索引位置,如果没有找到对象则抛出异常。
    

      

    extend()方法

    通过添加可迭代的元素来扩展列表。(逐个添加)

    list['cat','dog','food','eat']
    
    list.extend('abcd')
    ['cat','dog','food','eat','a','b','c']
    

      

    其他

    li=["我","和","中"]
    
    li[0:1]="中国123"
    li = ["中","国","1","2","3","和","中"]
    
    >>>li[0:1]="中国","123"
    li = ["中国","123","和","中"]
    

      

    定义元组

    元组用圆括号而不是方括号标识,元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表

    它只有3个方法,len,count和index.

    list = ('cat','dog','food','eat','cat','cat')
    
    >>>len(list)
    4
    
    >>>list.count('cat')
    3
    
    >>>list.index('cat')
    0
    

      

    用list()和tuple()函数来转换类型

    正如str(42)将返回'42',即整数42的字符串表⽰形式,函数list()和 tuple()将返回传递给它们的值的列表和元组版本。

    >>> tuple(['cat', 'dog', 5])
    ('cat', 'dog', 5)
    >>> list(('cat', 'dog', 5))
    ['cat', 'dog', 5]
    
    

      

  • 相关阅读:
    欧拉工程第53题:Combinatoric selections
    540A: Combination Lock
    540C: Ice Cave
    540B :School Marks
    欧拉工程第52题:Permuted multiples
    欧拉工程第51题:Prime digit replacements
    C. Tourist's Notes
    B. Quasi Binary
    [LeetCode] Longest Substring Without Repeating Characters
    [hihoCoder] 后序遍历
  • 原文地址:https://www.cnblogs.com/sunchao0709/p/11330111.html
Copyright © 2020-2023  润新知