Python 列表简介

列表是什么

列表由一系列按特定顺序排列的元素组成,列表通常包含多个元素,其中的元素之间没有任何关系。
在Python中,用方括号([ ])表示列表,并用逗号分隔其中的元素

访问列表元素

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

bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[0])
索引从0而不是1开始

Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-1,可让Python返回最后一个列表元素。
这种语法很有用,经常在不知道列表长度的情况下访问最后的元素时使用,这种约定也实用于其他负数索引。例如,索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,依此类推。

使用列表中的各个值

可以像使用其他变量一样使用列表中的各个值。例如,可以使用f字符串根据列表中的值来创建消息

names = ['trek','cannondale','redline','specialized']
print(f"{names[0].title()},hello")

修改、添加和删除元素

修改列表元素

与访问列表元素的语法类似。要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。

motorcycles = ['honda','yamaha','suzuki']
print(motorcycles)

motorcycles[0] = 'ducati'
print(motorcycles)

输出:
['honda', 'yamaha', 'suzuki']
['ducati', 'yamaha', 'suzuki']
在列表中添加元素

在列表末尾添加元素
append()给列表附加元素时,它将添加到列表末尾

motorcycles = ['honda','yamaha','suzuki']
print(motorcycles)

motorcycles.append('ducati') 
print(motorcycles)

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

motorcycles = ['honda','yamaha','suzuki']
print(motorcycles)

motorcycles.insert(0,'ducati') 
print(motorcycles)

输出:
['honda', 'yamaha', 'suzuki']
['ducati', 'honda', 'yamaha', 'suzuki']
从列表中删除元素

使用del语句删除元素
如果知道要删除的元素的位置在列表中的位置,可使用del语句
使用del语句将值从列表中删除后,你就无法再访问它了

motorcycles = ['honda','yamaha','suzuki']
print(motorcycles)

del motorcycles[0]
print(motorcycles)
输出:
['honda', 'yamaha', 'suzuki']
['yamaha', 'suzuki']

使用方法pop()删除元素
方法pop()删除列表末尾的元素,并让你能够接着使用它。

motorcycles = ['honda','yamaha','suzuki']
print(motorcycles)

popped_motorcycle = motorcycles.pop()
print(motorcycles)
print(popped_motorcycle)

输出:
['honda', 'yamaha', 'suzuki']
['honda', 'yamaha']
suzuki

弹出列表中任何位置处的元素

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

motorcycles = ['honda','yamaha','suzuki']
first_owned = motorcycles.pop(0)
print(f"The first motorcycle I owned was a {first_owned.title()}.")
输出:
The first motorcycle I owned was a Honda.

根据值删除元素
你不知道要从列表中删除的值所处的位置。如果只知道要删除的元素的值,可使用方法remove()
注意:方法remove()只删除第一个指定的值,如果要删除的值在列表中出现多次,就需要使用循环确保将每个值都删除

motorcycles = ['honda','yamaha','suzuki','ducati']
print(motorcycles)
motorcycles.remove('ducati')
print(motorcycles)
输出:
['honda', 'yamaha', 'suzuki', 'ducati']
['honda', 'yamaha', 'suzuki']

使用remove()从列表中删除元素时,也可以接着使用它的值

motorcycles = ['honda','yamaha','suzuki','ducati']
print(motorcycles)
too_expensive = 'ducati'
motorcycles.remove(too_expensive)
print(motorcycles)
print(f"\nA {too_expensive.title()} is too expensive for me.")

输出:
['honda', 'yamaha', 'suzuki', 'ducati']
['honda', 'yamaha', 'suzuki']

A Ducati is too expensive for me.

组织列表

使用sort()方法对列表永久排序

方法sort()永久性地修改列表元素的排列顺序,现在汽车是按字母顺序排列的,再也无法恢复到原来的排列顺序

cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort()
print(cars)
输出:
['audi', 'bmw', 'subaru', 'toyota']

还可以按与字母顺序相反的顺序排列列表元素,只需要向sort()方法传递参数reverse = Ture 即可。

cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort(reverse = True)
print(cars)
输出:
['toyota', 'subaru', 'bmw', 'audi']
使用函数sorted()对列表临时排序

要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数sorted()

cars = ['bmw', 'audi', 'toyota', 'subaru']
print(cars)

print("\nHere is the sorted list:")
print(sorted(cars))

print("\nHere is the original list:")
print(cars)

输出:
['bmw', 'audi', 'toyota', 'subaru']

Here is the sorted list:
['audi', 'bmw', 'subaru', 'toyota']

Here is the original list:
['bmw', 'audi', 'toyota', 'subaru']

还可以按与字母顺序相反的顺序排列列表元素,只需要向sort()方法传递参数reverse = Ture 即可。

倒着打印表

要反转列表元素的排列顺序,可使用方法reverse()
注意:方法reverse()永久性的修改列表元素的排列顺序,但可随时恢复到原来的排列顺序,只需要对列表再次调用reverse()即可

cars = ['bmw', 'audi', 'toyota', 'subaru']
print(cars)

cars.reverse()
print(cars)

输出:
['bmw', 'audi', 'toyota', 'subaru']
['subaru', 'toyota', 'audi', 'bmw']
确定列表长度

使用函数len()可快速获取表的长度。

使用列表时避免索引错误

发生索引错误却找不到解决方法时,尝试将列表或其长度打印出来。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值