首页 > 编程语言 >Python3 笔记:sort() 和 sorted() 的区别

Python3 笔记:sort() 和 sorted() 的区别

时间:2024-05-24 22:28:36浏览次数:19  
标签:sort reverse list1 list2 print sorted 排序 Python3

1、sort() 可以对列表中的元素进行排序,会改变原列表,之前的顺序不复存在。

list.sort(key, reverse = None) 
key:默认值是None,可指定项目进行排序,此参数可省略。 
reverse:默认值是None指做升序排序,“reverse = True”则做降序排序。

无论列表中的元素是数值还是字符串都能排序,但是需要进行排序的数据必须是同类型的数据,也就是说要么整个列表都是数值,要么整个列表都是字符串,如果列表中既有数值又有字符串则会报错。

给数值排序:

list1 = [3,5,1,2,9,6]
list1.sort()
print(list1)	# 运行结果:[1, 2, 3, 5, 6, 9]

给字符串排序:

list2 = ['Mark','Frank','Eliot','Tina','Anna']
list2.sort()
print(list2)	# 运行结果:['Anna', 'Eliot', 'Frank', 'Mark', 'Tina']

按降序排序:

list1 = [3,5,1,2,9,6]
list1.sort(reverse = True)
print(list1)	# 运行结果:[9, 6, 5, 3, 2, 1]

如果列表中既有数值又有字符串则会报错TypeError:

2、sorted() 可以对所有可迭代的对象进行排序操作,只会返回一个排序后的当前对象的副本,而不会改变当前对象。

sorted(iterable[, key][, reverse]) 
iterable:可迭代的对象,参数不能省略。 
key:默认值是None,可指定项目进行排序,可选参数。 
reverse:可选参数,默认值是False,指做升序排序,“reverse = True”则为做降序排序。

list2 = ['Mark','Frank','Eliot','Tina','Anna']
print(sorted(list2))	# 运行结果:['Anna', 'Eliot', 'Frank', 'Mark', 'Tina']
print(list2)	# 运行结果:['Mark', 'Frank', 'Eliot', 'Tina', 'Anna'],list2的顺序并未改变

按降序排序:

list1 = [3,5,1,2,9,6]
print(sorted(list1,reverse = True))	# 运行结果:[9, 6, 5, 3, 2, 1]
print(list1)	# 运行结果:[3, 5, 1, 2, 9, 6],list1的顺序并未改变

标签:sort,reverse,list1,list2,print,sorted,排序,Python3
From: https://blog.csdn.net/Catherine_CSDN_/article/details/139181344

相关文章

  • elasticsearch使用Sort排序时Please use a keyword field instead.
    具体报错信息ElasticsearchStatusException[Elasticsearchexception[type=search_phase_execution_exception,reason=allshardsfailed]];nested:ElasticsearchException[Elasticsearchexception[type=illegal_argument_exception,reason=Textfieldsarenotoptimised......
  • Linux下安装Python3
    前言Linux下大部分系统默认自带python2.x的版本,最常见的是python2.6或python2.7版本,默认的python被系统很多程序所依赖,比如centos下的yum就是python2写的,所以默认版本不要轻易删除,否则会有一些问题,如果需要使用最新的Python3那么我们可以编译安装源码包到独立目录,这和系统默认环......
  • 【PYTHON3】认识python语言
    一、什么是pythonPython是一种高级的开发语言,和java、C/C++等开发语言一样。其主要的方向是人工智能、爬虫、大数据、自动化等注意这里指的是主要用途,但并不代表python不能开发WEB、GUI、游戏等程序二、发展史以下解释来源菜鸟教程网址,因为我觉得菜鸟教程上的说明已经很清......
  • 9-4 file-sort命令的使用
    9.4.1file查看文件file命令作用:file-determinefiletype #确定文件类型用法:file/etc/passwd注:linux系统不根据后缀名识别文件类型用file命令查看文件的类型 9.4.2按一定规则排序查看文件查看文件:ls-ltr:按时间排序 t......
  • PWN系列-Unsorted Bin Attack
    PWN系列-UnsortedBinAttack概述UnsortedBinAttack,顾名思义,该攻击与Glibc堆管理中的的UnsortedBin的机制紧密相关。UnsortedBinAttack被利用的前提是控制UnsortedBinChunk的bk指针。UnsortedBinAttack可以达到的效果是实现修改任意地址值为一个较大的数值......
  • mac anaconda pycharm python3.6 tensorflow 1.1.0
     condaconfig--addchannelshttps://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/osx-arm64/condacreate-npy36python=3.6     ps:当加载卡住的时候,强制退出存在下载的包都消失的情况......
  • 【PYTHON3】环境搭建+编程学习之路的开始——Windows系统
    一、概述在学习python开发语言之前需要安装好开发语言环境(也就是常说的开发环境)开发环境主要有:解释器和编辑器IDE,而其中的解释器是用来将代码转换成机器语言,python语言也就是解释器;编辑器用来写代码逻辑,python语言推荐的是pycharm,它是IDE集成开发环境,这里面有开发时需要的工具......
  • redis数据结构:RedisObject,SkipList,SortedSet
    1.RedisObject对象redis中任何KV都会被封装为RedisObject对象,也叫做Redis对象 2.SkipList跳表元素按照升序排列存储,是有序的双向链表节点可以有多个指针,并且跨度不同。指针个数根据节点数自动生成,1~32性能和红黑树;二分查找差不多。实现简单,但是空间复杂度高样例:1——2......
  • 同时安装python2和python3,并重新设置pip2和pip3
    1.python2和python3安装官网地址:https://www.python.org/downloads/2.环境变量配置在Path中添加:python2的安装目录:xxx\python2;xxx\python2\Scripts;python3的安装目录:xxx\python3;xxx\python3\Scripts;对其安装目录下的python.exe和pythonw.exe重命名:python2.exe、pyt......
  • python3.8下载过程
    python网址:https://www.python.org/ 下载——————————————选downloads下的windows 稍微等待一会后进入此界面 向下滑,找到3.8.0(python版本并不是按顺序排列的) 选择适合自己的版本下载——————其中X86适用于32系统,X86-64适合64的web-based:透过网......