python中的 sorted()函数和sort()方法区别
作者:侯小啾?? 发布时间:2022-04-13 05:16:11
标签:python,sorted()函数,sort()方法
1.sort()
首先看sort()
方法,sort
方法只能对列表进行操作,而sorted
可用于所有的可迭代对象。
a = [1, 5, 3, 4, 2]
a.sort()
print(a)
调用sort()
方法后,原列表被改变。
2.sorted()
再看sorted()
函数,
sorted(iterable, key=None, reverse=False)
iterable
是一个可迭代对象key为指定的排序标的,指定排列的是哪一个值。参数类型为 函数类型。(需要传入一个函数)
如给
dic_items
里的键值对排序时,默认是按照键来排,可以设定此参数来按照Value
排列。reverse
为排序方式,False为升序,True为降序
返回值是一个列表。
3.sorted()操作列表
a = [1, 5, 3, 4, 2]
print(sorted(a))
print(a)
使用sorted
函数,不改变原列表。sorted
操作其他可迭代对象大致过程同上。
4.sorted()排序字典
使用sorted()排序字典,首先要将字典中的值放在一个可迭代对象中:
这里将dict1转化为dict1.items()
后,再传入sorted()
函数中即可。
关于参数key有两种常用写法,
①参数key:使用lambda定义
使用lambda
定义一个获取x第二个值的函数,这里x指可迭代对象中的元素。
dict1 = {'a': 1, 'b': 4, 'c': 2, 'd': 3}
print(sorted(dict1.items(), key=lambda x: x[1], reverse=True))
②参数key:使用itemgetter直接生成
from operator import itemgetter
dict1 = {'a': 1, 'b': 4, 'c': 2, 'd': 3}
print(sorted(dict1.items(), key=itemgetter(1), reverse=True))
也可以达到一样的效果:
关于itemgetter()
是个什么,itemgetter()
是一个高阶函数,返回值是一个函数,itemgetter(1)
等同于lambda x: x[1]。
单独对其进行调用就可以看出:
from operator import itemgetter
print(itemgetter(1)([1, 2, 3]))
如图,其获取了列表[1, 2, 3]索引为1的值。
来源:https://blog.csdn.net/weixin_48964486/article/details/122841737


猜你喜欢
- 这篇文章主要介绍了python requests抓取one推送文字和图片代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一
- 本文实例为大家分享了微信小程序上传图片到php服务器的具体代码,供大家参考,具体内容如下js代码如下 submitPhoto(){ var
- 如下所示:1. 在PyCharm下安装pyinstaller2. 在Terminal下输入:“pyinstaller -F -w *.py”
- python怎么模拟点击网页按钮前提环境: Python3 和 Visual Studio Code安装完毕安装selenium : 在终端
- 偶然遇到的问题,记录如下:通常我们在push项目时,会有些配置文件或本地文件不想上传到服务器上这时候我们会通过设置.gitignore&nb
- 均方损失函数:这里 loss, x, y 的维度是一样的,可以是向量或者矩阵,i 是下标。很多的 loss 函数都有 size_averag
- 1 什么是 NumpyNumPy,是 Numerical Python 的简称,用于高性能科学计算和数据分析的基础包,像数学科学工具(pan
- 初识条件判断(逻辑判断)逻辑判断与逻辑语句什么是逻辑判断? —> 对于一件事情的正确与否的判断,即 真假的判断;在
- 锟拷码和口字码说到乱码问题就不得不提到锟斤拷,这算是非常常见的一种乱码形式,那么它到底是经过何种错误操作产生的呢?下面我们一步步探究。看一个
- 第一步:在handleTarget函数方法开始加入:var theTarget = e.target; if (theTarget != n
- pycharm2019激活码是专门针对与pycharm2019这一款软件而研发的激活码,能够完美激活软件,并且能够支持2019.1版本,理论
- 一、选择文件夹首先导入PySimpleGUI库,并且用缩写sg来表示。import PySimpleGUI as sg# 窗口显示文本框和浏
- 直接使用word文档已经难不倒大家了,有没有想过用python构建一个word文档写点文章呢?当然这个文章的框架需要我们用代码一点点的建立,
- CASE 表达式分为简单表达式与搜索表达式,其中搜索表达式可以覆盖简单表达式的全部能力,我也建议只写搜索表达式,而不要写简单表达式。简单表达
- 使用matplotlib生成图片,想要背景透明,而且图例部分也显示透明效果,找到了大概的设置方法,特此记录。# coding=utf-8#
- 很多开发人员在刚开始学Python 时,都考虑过像 c++ 那样来实现 singleton 模式,但后来会发现 c++ 是 c++,Pyth
- 结构体structstruct 用来自定义复杂数据结构,可以包含多个字段(属性),可以嵌套;go中的struct类型理解为类,可以定义方法,
- 一、创建mysql数据库1.创建数据库语法--创建名称为“testdb”数据库,并设定编码集为utf8CREATE DATABASE IF
- wordcloud是Python扩展库中一种将词语用图片表达出来的一种形式,通过词云生成的图片,我们可以更加直观的看出某篇文章的故事梗概。首
- 本文实例讲述了原生JS实现Ajax通过GET方式与PHP进行交互操作。分享给大家供大家参考,具体如下:一、代码conn.php<?ph