• Python 的列表


    介绍列表

    列表是由若干个元素按照一定的顺序排列组成.

    列表中的元素可以有关系或没有任何关系.

    列表元素通常为多个, 因此一般给列表一个表示复数的名字.

    用方括号表示列表, 元素放在列表内, 用逗号分隔其中的各个元素.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    • 1
    • 2

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    
    • 1

    创建一个列表

    函数 list()

    创建空列表

    程序示例:

    lists = []
    print(lists)
    print(type(lists))
    
    • 1
    • 2
    • 3

    结果:

    []
    
    
    • 1
    • 2

    利用索引访问列表元素

    因为列表中的元素是有顺序的, 因此可以借助索引访问列表中的元素. 先给出列表名称, 紧跟着一对方括号, 方括号内放置索引, 即可得到该元素.

    可将这种形式当成该元素的变量名.

    索引从 0 开始.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    print(names[0])
    print(names[1].title())
    
    • 1
    • 2
    • 3
    • 4

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    xiao
    Zhang
    
    • 1
    • 2
    • 3

    从右到左,索引从 -1 开始,依次减一,即 -1,-2,…,-(n+1),n 是元素总和。

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(f"Hello, {names[-1].title()}")
    
    • 1
    • 2

    结果:

    Hello, Li
    
    • 1

    修改列表的元素

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    names[1] = 'Cheng'
    print(names)
    
    • 1
    • 2
    • 3
    • 4

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['xiao', 'Cheng', 'wang', 'li']
    
    • 1
    • 2

    增加列表的元素

    append() 方法

    append() 方法将新元素添加到列表的末尾。需要提供一个参数,即新元素。

    程序示例:

    lists = []
    print(lists)
    print(type(lists))
    
    lists.append('hello')
    print(lists)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    结果:

    []
    
    ['hello']
    
    • 1
    • 2
    • 3

    insert() 方法

    insert() 方法可在列表任意位置添加元素,需要提供两个参数,第一个是添加新元素后,新元素在列表中的索引,第二个是新元素。

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    names.insert(1, 'Cheng')
    print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['xiao', 'Cheng', 'zhang', 'wang', 'li']
    
    • 1
    • 2

    从列表中删除元素

    del 语句

    使用 del 语句,需要提供待删除元素在列表中的索引。

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    del names[1]
    print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果;

    ['xiao', 'zhang', 'wang', 'li']
    ['xiao', 'wang', 'li']
    
    • 1
    • 2

    使用 del 语句将元素从列表中删除后, 将再也无法访问这个元素.

    pop() 方法

    可以用 pop() 删除列表中任意位置的元素, 需要提供一个参数, 即该元素的索引.

    不提供参数时, 默认删除列表最后一个元素.

    pop 即弹出的意思.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    names.pop()
    print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['xiao', 'zhang', 'wang']
    
    • 1
    • 2

    用方法 pop() 弹出的元素, 还可以继续使用.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    he = names.pop()
    print(names)
    print(he)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['xiao', 'zhang', 'wang']
    li
    
    • 1
    • 2
    • 3

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    he = names.pop(2)
    print(names)
    print(he)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['xiao', 'zhang', 'li']
    wang
    
    • 1
    • 2
    • 3

    remove() 方法

    可以使用方法 remove() 删除列表中的元素, 需要提供一个参数, 即该待删除元素的值.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    names.remove('xiao')
    print(names)
    
    • 1
    • 2
    • 3
    • 4

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['zhang', 'wang', 'li']
    
    • 1
    • 2

    使用 remove() 方法删除的值, 不能继续使用该值.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    name = names.remove('xiao')
    print(names)
    print(name)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['zhang', 'wang', 'li']
    None
    
    • 1
    • 2
    • 3

    remove() 方法只删除第一个出现的值, 如果列表中有多个重复的值, 可以借助循环删除所有的值.

    对列表元素进行排序

    sort() 方法

    sort() 方法可以永久修改列表元素的排序,将列表元素按照字母顺序排列。

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    names.sort()
    print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['li', 'wang', 'xiao', 'zhang']
    
    • 1
    • 2

    在 sort() 方法中传入参数 reverse=True, 可以按照与字母顺序相反的顺序排列.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    
    names.sort(reverse=True)
    print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['zhang', 'xiao', 'wang', 'li']
    
    • 1
    • 2

    函数 sorted()

    函数 sorted() 对列表临时排序.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    print(sorted(names))
    print(names)
    
    • 1
    • 2
    • 3
    • 4

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['li', 'wang', 'xiao', 'zhang']
    ['xiao', 'zhang', 'wang', 'li']
    
    • 1
    • 2
    • 3

    给函数 sorted() 传递一个参数 reverse=True 可以按照与字母相反的顺序排列.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    print(sorted(names, reverse=True))
    print(names)
    
    • 1
    • 2
    • 3
    • 4

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['zhang', 'xiao', 'wang', 'li']
    ['xiao', 'zhang', 'wang', 'li']
    
    • 1
    • 2
    • 3

    当字母是大小写混杂时将更复杂些.

    reverse() 方法

    reverse() 方法可以反转列表元素的顺序, 这是永久性地修改元素顺序, 但是如果想要恢复元素的顺序, 可以再一次使用 reverse() 方法.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(names)
    names.reverse()
    print(names)
    names.reverse()
    print(names)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    结果:

    ['xiao', 'zhang', 'wang', 'li']
    ['li', 'wang', 'zhang', 'xiao']
    ['xiao', 'zhang', 'wang', 'li']
    
    • 1
    • 2
    • 3

    求列表元素个数

    用函数 len() 可以求出列表元素的个数.

    程序示例:

    names = ['xiao', 'zhang', 'wang', 'li']
    print(len(names))
    
    • 1
    • 2

    结果:

    4
    
    • 1
  • 相关阅读:
    React高级特性之context
    Echarts简单使用
    音频转文字软件哪个好?建议收藏这些软件
    Java属性setProperty()方法与示例:java中的property
    vue项目TypeScript intellisense is disabled on template.异常解决方案
    重学java基础----集合框架(1)
    Vue3, setup语法糖、Composition API全方位解读
    GIS应用程序的Web编程教程
    vue-router 学习知识汇总
    Redis 集群搭建--Linux 开发三主三从
  • 原文地址:https://blog.csdn.net/chengkai730/article/details/133692196