当前位置: 首页 > news >正文

Python 列表操作指南3

示例,将新列表中的所有值设置为 ‘hello’:

newlist = ['hello' for x in fruits]

表达式还可以包含条件,不像筛选器那样,而是作为操纵结果的一种方式:

示例,返回 “orange” 而不是 “banana”:

newlist = [x if x != "banana" else "orange" for x in fruits]

列表对象具有 sort() 方法,默认情况下将对列表进行字母数字排序,升序排列:

示例,对列表按字母顺序排序:

thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort()
print(thislist)

示例,对列表按数字顺序排序:

thislist = [100, 50, 65, 82, 23]
thislist.sort()
print(thislist)

要进行降序排序,请使用关键字参数 reverse = True:

示例,对列表进行降序排序:

thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort(reverse=True)
print(thislist)

示例,对列表进行降序排序:

thislist = [100, 50, 65, 82, 23]
thislist.sort(reverse=True)
print(thislist)

您还可以通过使用关键字参数 key = function 来自定义自己的函数。该函数将返回一个数字,用于对列表进行排序(首先是最小的数字):

示例,根据数字距离 50 的接近程度对列表进行排序:

def myfunc(n):return abs(n - 50)thislist = [100, 50, 65, 82, 23]
thislist.sort(key=myfunc)
print(thislist)

默认情况下,sort() 方法区分大小写,这导致所有大写字母在小写字母之前排序:

示例,区分大小写的排序可能会导致意外结果:

thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort()
print(thislist)

幸运的是,在对列表进行排序时,我们可以使用内置函数作为键函数。因此,如果您想要不区分大小写的排序函数,请使用 str.lower 作为键函数:

示例,执行不区分大小写的列表排序:

thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort(key=str.lower)
print(thislist)

如果要反转列表的顺序,而不考虑字母表顺序,该怎么办?reverse() 方法将元素的当前排序顺序反转。

示例,反转列表项的顺序:

thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.reverse()
print(thislist)

您不能简单地通过键入 list2 = list1 来复制一个列表,因为:list2 将只是对 list1 的引用,对 list1 进行的更改也会自动在 list2 中进行。有多种方法可以进行复制,其中一种方法是使用内置的列表方法 copy()。

示例,使用 copy() 方法复制一个列表:

thislist = ["apple", "banana", "cherry"]
mylist = thislist.copy()
print(mylist)

另一种复制的方法是使用内置的 list() 方法。

示例,使用 list() 方法复制一个列表:

thislist = ["apple", "banana", "cherry"]
mylist = list(thislist)
print(mylist)

在Python中,有多种方法可以连接两个或多个列表。其中一种最简单的方法是使用 + 运算符。

示例,连接两个列表:

list1 = ["a", "b", "c"]
list2 = [1, 2, 3]list3 = list1 + list2
print(list3)

另一种连接两个列表的方法是将 list2 中的所有项逐一附加到 list1 中:

示例,将 list2 附加到 list1:

list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]for x in list2:list1.append(x)print(list1)

或者您可以使用 extend() 方法,其目的是将一个列表的元素添加到另一个列表中:

示例,使用 extend() 方法将 list2 添加到 list1 的末尾:

list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]list1.extend(list2)
print(list1)

Python具有一组内置方法,您可以在列表上使用这些方法。

方法描述
append()在列表末尾添加元素
clear()移除列表中的所有元素
copy()返回列表的副本
count()返回具有指定值的元素数量
extend()将列表(或任何可迭代对象)的元素添加到当前列表的末尾
index()返回具有指定值的第一个元素的索引
insert()在指定位置添加元素
pop()移除指定位置的元素
remove()移除具有指定值的项目
reverse()颠倒列表的顺序
sort()对列表进行排序

最后

为了方便其他设备和平台的小伙伴观看往期文章,链接奉上:

公众号搜索Let us Coding知乎开源中国CSDN思否掘金InfoQ简书博客园慕课51CTOhelloworld腾讯开发者社区阿里开发者社区

看完如果觉得有帮助,欢迎点赞、收藏关注

http://www.lryc.cn/news/182217.html

相关文章:

  • 三个要点,掌握Spring Boot单元测试
  • 【nginx】Nginx配置:
  • CSS3与HTML5
  • redis的简单使用
  • Windows下启动freeRDP并自适应远端桌面大小
  • ES6中的数值扩展
  • 自定义注解实现Redis分布式锁、手动控制事务和根据异常名字或内容限流的三合一的功能
  • Linux:minishell
  • STM32驱动步进电机
  • 计算机视觉——飞桨深度学习实战-深度学习网络模型
  • 用c动态数组(不用c++vector)实现手撸神经网咯230901
  • 视频讲解|基于DistFlow潮流的配电网故障重构代码
  • Ultralytics(YoloV8)开发环境配置,训练,模型转换,部署全流程测试记录
  • springboot之@ImportResource:导入Spring配置文件~
  • 阿里云服务器免费申请入口_注册阿里云免费领4台服务器
  • ES6中的async、await函数
  • 代码随想录算法训练营第五十六天 | 动态规划 part 14 | 1143.最长公共子序列、1035.不相交的线、53. 最大子序和(dp)
  • 【数据挖掘】2021年 Quiz 1-3 整理 带答案
  • 【软件设计师-中级——刷题记录6(纯干货)】
  • 微信小程序点单左右联动的效果实现
  • Socket通信
  • TCP 如何保证有效传输及拥塞控制
  • PyQt5+Qt设计师初探
  • rust cargo
  • CANoe.Diva生成测试用例
  • openGauss学习笔记-89 openGauss 数据库管理-内存优化表MOT管理-内存表特性-使用MOT-MOT使用查询原生编译
  • python获取时间戳
  • 2023年山东省安全员C证证考试题库及山东省安全员C证试题解析
  • Java中的Unicode字符编码与占用比特位解析
  • 分布式事务-TCC案例分析流程图