Python 列表

本文深入解析了Python列表的基本概念,包括列表的定义、元素访问、修改、添加和删除,以及排序、长度获取和索引使用技巧。通过实例演示,展示了如何运用sort()、sorted()和reverse()函数进行列表操作。
摘要由CSDN通过智能技术生成

Science is not only a dsciple of reason but, also, one of romance and passion. – Stephen Hawking

一、列表 list 是什么?

列表:一系列按特定顺序排列的元素组成。
在python中使用中括号 [] 来表示列表, 并使用逗号来分隔列表中的元素。例如:

players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
years = [2015, 2017, 2018, 2022]
print(players)
print(type(players)) # 通过type()查看数据类型
# 运行输出
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
<class 'list'>

1.1 访问列表元素

列表是有序的元素集合,要访问列表元素只需将元素所在位置或索引告诉python即可。

players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
years = [2015, 2017, 2018, 2022]
print(players[0], '\n', years[1]) # 列表[索引]的格式进行元素访问

# 运行输出
Stephen Curry 
 2017

注意:列表索引从0开始,而不是1访问最后一个元素,其索引为-1,同理索引 -2 为倒数第二个元素位置,以此类推。

players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
years = [2015, 2017, 2018, 2022]
print(players[-1], '\n', years[-2]) # 列表[索引]的格式进行元素访问

# 运行输出
Andrew Wiggins 
 2018

二、修改,添加,删除元素

创建的大多数列表是动态的,即需要随时修改,增加或删减列表的元素。

2.1 修改列表元素

指定列表名和要修改的元素索引,再赋值一个新的值。例如:

players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
players[-1] = 'Jordan Poole'
print(players)

# 运行输出
['Stephen Curry', 'Klay Thompson', 'Jordan Poole']

2.2 添加列表元素

  • append(): 将新的元素添加到列表末尾
  • insert(): 指定位置添加元素
players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins'] 
players.append('Jordan Poole') # 将新元素添加末尾
print(players)

players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins'] 
players.insert(1, 'Jordan Poole') # 在列表索引为1的地方添加新元素
print(players)

# 运行输出
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins', 'Jordan Poole']
['Stephen Curry', 'Jordan Poole', 'Klay Thompson', 'Andrew Wiggins']

2.3 删除列表元素

del:需指定删除元素所在索引
pop(): 在括号中指定索引,则删除该索引对应元素。若括号为空,则删除最后一个元素。
remove(): 根据列表的值删除元素,不需要知道其所在位置。

# 示例
players = ['Stephen Curry', 'Klay Thompson', 'Draymond Green', 'Andrew Wiggins']
del players[-2] # del 指定删除元素的索引
print(players)

players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins', 'Draymond Green']
players.pop() # 括号没指定索引,默认删除最后一个元素。
print(players)

players = ['Stephen Curry', 'Draymond Green', 'Klay Thompson', 'Andrew Wiggins']
players.remove('draymond green'.title())
print(players)
# 运行输出
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']

三、组织列表

3.1 排序

调整列表中元素的排列顺序。

3.1.1 方法sort()永久排序

方法sort():按照首字母的顺序,对列表进行永久性排序, 无法恢复原来顺序。

# 示例
players = ['Stephen Curry', 'Draymond Green', 'Klay Thompson', 'Andrew Wiggins']
players.sort() # 按字母顺序
print(players)

players.sort(reverse=True) # 指定reverse=True,按字母顺序相反方向
players.pop(-2) # pop()指定索引删除
print(players)
# 运行输出
['Andrew Wiggins', 'Draymond Green', 'Klay Thompson', 'Stephen Curry']
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']

3.1.2函数sorted()暂时排序

python中函数与方法的区别可参考:链接点我

# 示例
players = ['Stephen Curry', 'Draymond Green', 'Klay Thompson', 'Andrew Wiggins']
print(sorted(players,reverse=True)) # 暂时排序
print(players)

players.sort(reverse=False) # 永久排序
print(players)
# 运行输出
['Stephen Curry', 'Klay Thompson', 'Draymond Green', 'Andrew Wiggins']
['Stephen Curry', 'Draymond Green', 'Klay Thompson', 'Andrew Wiggins']

['Andrew Wiggins', 'Draymond Green', 'Klay Thompson', 'Stephen Curry']

3.2 方法reverse()倒转列表元素

# 示例
players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
players.reverse() # 永久性的修改元素的顺序
print(players)

players.reverse() # 再来一次,就又回到最初的顺序
print(players)
# 运行输出
['Andrew Wiggins', 'Klay Thompson', 'Stephen Curry']
['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']

3.3 函数len()确定列表长度

# 示例
players = ['Stephen Curry', 'Draymond Green', 'Klay Thompson', 'Andrew Wiggins']
players.pop(2)
print(len(players))
# 运行输出
3

四、列表索引使用错误

  • 列表只有三个元素,你的索引是3或更大,则报错。
  • 空列表时,索引为 -1 时则报错。
    当发生这种错误时,可使用 len() 打印列表的长度。

五、总结

— 有句话说得好 JUST DO IT。
— 后来,,,就进入了 IT 行业。

If you feel happy, clap your hands.👏👏👏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值