• 【python基础(二)】列表详解


    列表由一系列按特定顺序排列的元素组成。可以将任何东西加入列表中,其中的元素之间可以没有任何关系。

    在Python中,用方括号([])表示列表,并用逗号分隔其中的元素。

    >>> bicycles = ['trek','cannondale','redline','specialized']
    >>> print(bicycles)
    ['trek', 'cannondale', 'redline', 'specialized']
    
    • 1
    • 2
    • 3

     

    一. 访问列表元素

    列表是有序集合,因此要访问列表的任意元素,只需将该**元素的位置(索引)**告诉Python即可。

    # 索引从0而不是1开始
    >>> print(bicycles[0])
    trek
    
    • 1
    • 2
    • 3

    元素再调用方法

    >>> print(bicycles[0].title())
    Trek
    
    • 1
    • 2

    通过将索引指定为-1,可让Python返回最后一个列表元素:

    >>> print(bicycles[-1].title())
    Specialized
    
    • 1
    • 2

    索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,依此类推。

     

    二. 使用列表中的各个值

    可以像使用其他变量一样使用列表中的各个值

    >>> message=f"my first bicycle was a {bicycles[-2].title()}"
    >>> print(message)
    my first bicycle was a Redline
    
    • 1
    • 2
    • 3

     

    三. 修改、添加和删除元素

    1. 修改列表元素

    要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。

    motorcycles = ['honda', 'yamaha', 'suzuki']
    motorcycles[0] = 'ducati'
    print(motorcycles)
    
    # ['ducati', 'yamaha', 'suzuki']
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2. 在列表中添加元素

    在列表末尾添加元素
    在列表中添加新元素时,最简单的方式是将元素附加(append)到列表。

    motorcycles = ['honda', 'yamaha', 'suzuki']
    
    motorcycles.append('ducati')
    print(motorcycles)
    
    • 1
    • 2
    • 3
    • 4

     

    在列表中插入元素
    使用方法insert()可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。

    motorcycles = ['honda', 'yamaha', 'suzuki']
    
    motorcycles.insert(0, 'ducati')
    print(motorcycles)
    
    • 1
    • 2
    • 3
    • 4

    方法insert()在索引0处添加空间,并将值’ducati’存储到这个地方。这种操作将列表中既有的每个元素都右移一个位置.

     
    方法insert()在索引0处添加空间,并将值’ducati’存储到这个地方。这种操作将列表中既有的每个元素都右移一个位置.

     

    3. 从列表中删除元素

    可以根据位置或值来删除列表中的元素。

    使用del语句删除元素

    motorcycles = ['honda', 'yamaha', 'suzuki']
    del  motorcycles[0]
    print(motorcycles)
    
    # ['yamaha', 'suzuki']
    
    • 1
    • 2
    • 3
    • 4
    • 5

     
    使用方法pop()删除元素

    假设列表中的摩托车是按购买时间存储的,就可使用方法pop()打印一条消息,指出最后购买的是哪款摩托车:

    motorcycles = ['honda', 'yamaha', 'suzuki']
    
    last_owned = motorcycles.pop()
    print(f"The last motorcycle I owned was a {last_owned.title()}.")
    
    • 1
    • 2
    • 3
    • 4

    弹出列表中任何位置处的元素
    可以使用pop()来删除列表中任意位置的元素,只需在圆括号中指定要删除元素的索引即可。

    motorcycles = ['honda', 'yamaha', 'suzuki']
    
    first_owned = motorcycles.pop(0)
    print(f"The first motorcycle I owned was a {first_owned.title()}.")
    
    • 1
    • 2
    • 3
    • 4

    根据值删除元素

    motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati']
    motorcycles.remove('ducati')
    print(motorcycles)
    
    • 1
    • 2
    • 3

     

    四.组织列表

    1. sort()对列表永久排序

    cars = ['bmw', 'audi', 'toyota', 'subaru']
    cars.sort()
    print(cars)
    
    cars = ['bmw', 'audi', 'toyota', 'subaru']
    cars.sort(reverse=True)
    print(cars)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

     

    2. sorted()对列表临时排序

    cars = ['bmw', 'audi', 'toyota', 'subaru']
    
    
    print("\nHere is the sorted list:")
    print(sorted(cars))
    
    print("\nHere is the original list again:")
    print(cars)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    如果要按与字母顺序相反的顺序显示列表,也可向函数sorted()传递参数reverse=True。

     

    3. 倒着打印列表

    要反转列表元素的排列顺序,可使用方法reverse()。
    reverse()不是按与字母顺序相反的顺序排列列表元素,而只是反转列表元素的排列顺序:

    cars = ['bmw', 'audi', 'toyota', 'subaru']
    print(cars)
    
    cars.reverse()
    print(cars)
    
    
    #['bmw', 'audi', 'toyota', 'subaru']
    #['subaru', 'toyota', 'audi', 'bmw']
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

     

    4. 确定列表的长度

    >>> cars = ['bmw', 'audi', 'toyota', 'subaru']
    >>> len(cars)
    4
    
    • 1
    • 2
    • 3

     
    参考:《Python编程:从入门到实践(第二版)》

  • 相关阅读:
    Hadoop3教程(二十九):(生产调优篇)集群扩容及缩容(白名单与黑名单)
    基于springboot在线玩具商城交易平台的设计与实现
    【专栏】RPC系列(番外)-“土气”的IO实现
    Shell脚本大全
    net/http库中request.RemoteAddr的值不确定性-【Golang踩坑笔记】
    大厂秋招真题【二分查找】小红书20230726秋招提前批T2-精华帖子
    Go微服务框架go-kratos实战01:quickstart 快速开始
    Linux登录界面
    『无为则无心』Python基础 — 61、Python中的迭代器
    vulnhub靶机DC9
  • 原文地址:https://blog.csdn.net/hiliang521/article/details/134563964