[转载] python中sort()与sorted()
参考链接: Python中的Sorted
本文主要讲sort与sorted的主要区别,以便正确使用
一、
sort()只能用于列表;sorted()可以用于所有可迭代对象; 比如:
str_a = "blue"
print(sorted(str_a))
>>>['b', 'e', 'l', 'u']
二、
sort()对列表排序是进行原处排序,并不会返回新的列表;sorted()排序后会返回一个新的列表; 比如:
对于sort()来说:
lis_a = [5,4,3,2,1]
lis_a.sort()
print(lis_a)
>>>[1, 2, 3, 4, 5]
对于sorted()来说:
lis_a = [5,4,3,2,1]
lis_b = sorted(lis_a)
print(lis_a)
print(lis_b)
>>>[5, 4, 3, 2, 1]
>>>[1, 2, 3, 4, 5]
为什么会有两种方法,而不简单的使用一种方法就行了呢? 下面是我的个人理解,可能并不全对,如有纰漏望指正。 我认为,因为列表是可变序列,所以可以原地修改,也即可以原地排序。但是对于字符串等可迭代对象来说,是属于不可变的,是不可以原处修改的。sort()方法属于原地修改,所以可能只能用于列表,对于其他不可变的可迭代对象就创造了另一种sorted()方法。还有一点浅层的就是,sort()因为是原处排序,所以对原列表进行了修改。如果你不想改变原列表,那么python提供了sorted()方法。可能有人不懂什么是原处修改? 比如:
可变序列:lis_a = ['a','b','c','d','e','f']
不可变序列:str_a = "abcdef"
lis_a[0] = 1
str_a[0] = 1 #序列均可进行下标索引操作
print(lis_a)
print(str_a)
那么就会报错
但是对于列表来说则是:
[转载] python中sort()与sorted()相关推荐
- [转载] python中sort,sorted,reverse,reversed的区别
参考链接: Python中的sort 简单的说以上四个内置函数都是排序. 对于sort和reverse都是list列表的内置函数,一般不传参数,没有返回值,会改变原列表的值. 而sorted和reve ...
- Python中sort和sorted函数代码解析
Python中sort和sorted函数代码解析 本文研究的主要是Python中sort和sorted函数的相关内容,具体如下. 一.sort函数 sort函数是序列的内部函数 函数原型: L.sor ...
- python中sort和sorted区别_Python中的 sort 和 sorted的用法与区别
今天在做一道题时,因为忘了Python中sort和sorted的用法与区别导致程序一直报错,找了好久才知道是使用方法错误的问题!现在就大致的归纳一下sort和sorted的用法与区别 1. sort: ...
- Python中sort和sorted的用法与区别
1. sort: sort是Python中列表的方法 sort() 方法语法: list.sort(key=None, reverse=False) 有两个参数,这里不讲第一个参数,第二个参数当 re ...
- Python中sort与sorted函数
python中列表的内置函数sort()可以对列表中的元素进行排序,而全局性的sorted()函数则对所有可迭代的序列都是适用的: 并且sort()函数是内置函数,会改变当前对象,而sorted()函 ...
- Python中sort()和sorted()的区别
Python中提供了两种常用的对列表进行排序的方法: 使用列表对象的sort()方法: 使用内置的sorted()函数: 1.使用列表对象的sort()方法 列表对象提供了sort()方法对于原列表中 ...
- python中 .sort()、 sorted()和 .reverse() 、reversed()的区别
原文链接? 现在举例说明: .sort() 相当于: .sort(reverse=False). 若 reverse=True,则是降序排列. a = [1,4,5,3,2,4,5,6,7,8] b ...
- python中sort函数源代码_Python中sort和sorted函数代码解析
Python中sort和sorted函数代码解析 本文研究的主要是Python中sort和sorted函数的相关内容,具体如下. 一.sort函数 sort函数是序列的内部函数 函数原型: L.sor ...
- python:sort,sorted,argsort,lexsort
Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列 目录 1.使用sort排序 2.使用sorted()排序 key ...
最新文章
- 新一代测序技术Sparc
- 个人网站架构设计(一)
- Bootloader的基本概念
- Hadoop集群 MapReduce初级案例
- 索引创建以及优化_1
- 机器学习中的损失函数 (着重比较:hinge loss vs softmax loss)
- 编译mod_jk.so
- 「模拟赛20180306」回忆树 memory LCA+KMP+AC自动机+树状数组
- 日常生活开支记账明细_做好这3点,不再白记账
- PHP 常用算法集锦
- Confluence 6 你模板中可用的对象
- GIWAXS数据处理流程详细
- ubuntu安装windows 字体
- AES200 软件用户手册
- 今日锋评:愚人节的秘密
- 单位增益缓冲器的反馈路径中电阻的作用是什么?
- 软重启、硬重启、重启、重置概念介绍
- 表示自己从头开始的句子_一切从头开始唯美句子,致自己重新开始的句子
- 技巧| 如何打造高逼格耀斑效果
- 计算机视觉:目标跟踪论文推荐
热门文章
- php大文件读,PHP读取大文件
- 【代码源 Div1#103】子串的最大差 Codeforces - 817D,力扣2104,1900分
- 【2020模拟考试T2】【PAT乙】1032 挖掘机技术哪家强 (20分) 模拟,STL
- 【Web前端】hexo博客管理
- java jdbc 批量更新_java,jdbc,大量数据update更新效率很慢,哪位大神可怜可怜我吧...
- 农行运营合规管理心得体会_老员工写诗讲述农行40年运营风采
- MySQL→数据库、启动连接数据库、SQL→DDL数据定义语言及数据类型、DML数据操作语言、DQL数据查询语言、数据库约束→主键、唯一、非空、默认、外键、SQL、三大范式及一多关系、视图、内外连接
- 小兔子(PAT乙级练习题)
- Undefined function 'conv2' for input arguments of type 'double' and attributes 'full 3d complex'.
- Echarts数据可视化title标题,开发全解+完美注释