python中的sort的方法使用详解

这篇文章主要介绍了python中的sort方法,需要的朋友可以参考下

Python中的sort()方法用于数组排序,本文以实例形式对此加以详细说明:

一、基本形式
列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的。

x = [4, 6, 2, 1, 7, 9]x.sort()print x # [1, 2, 4, 6, 7, 9]

登录后复制

如果需要一个排序好的副本,同时保持原有列表不变,怎么实现呢

立即学习“Python免费学习笔记(深入)”;

x =[4, 6, 2, 1, 7, 9]y = x[ : ]y.sort()print y #[1, 2, 4, 6, 7, 9]print x #[4, 6, 2, 1, 7, 9]

登录后复制

注意:y = x[:] 通过分片操作将列表x的元素全部拷贝给y,如果简单的把x赋值给y:y = x,y和x还是指向同一个列表,并没有产生新的副本。

另一种获取已排序的列表副本的方法是使用sorted函数:

x =[4, 6, 2, 1, 7, 9]y = sorted(x)print y #[1, 2, 4, 6, 7, 9]print x #[4, 6, 2, 1, 7, 9]

登录后复制

sorted返回一个有序的副本,并且类型总是列表,如下:

print sorted('Python') #['P', 'h', 'n', 'o', 't', 'y']

登录后复制

二、自定义比较函数

可以定义自己的比较函数,然后通过参数传递给sort方法:

def comp(x, y):if x  y:return -1else:return 0nums = [3, 2, 8 ,0 , 1]nums.sort(comp)print nums # 降序排序[8, 3, 2, 1, 0]nums.sort(cmp) # 调用内建函数cmp ,升序排序print nums # 降序排序[0, 1, 2, 3, 8]

登录后复制

三、可选参数

sort方法还有两个可选参数:key和reverse

1、key在使用时必须提供一个排序过程总调用的函数:

x = ['mmm', 'mm', 'mm', 'm' ]x.sort(key = len)print x # ['m', 'mm', 'mm', 'mmm']

登录后复制

2、reverse实现降序排序,需要提供一个布尔值:

y = [3, 2, 8 ,0 , 1]y.sort(reverse = True)print y #[8, 3, 2, 1, 0]

登录后复制

以上就是python中的sort的方法使用详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2264355.html

(0)
上一篇 2025年2月27日 08:08:31
下一篇 2025年2月24日 20:18:29

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • python怎么批量合并excel表格

    这次给大家带来python怎么批量合并excel表格,python批量合并excel表格的注意事项有哪些,下面就是实战案例,一起来看一下。 合并单元格 合并单元格相信大家都会,比如下面这段简单的代码就可以实现: app=’Word’ wor…

    2025年2月27日 编程技术
    200
  • python字符串连接的几种方式总结

    本篇文章给大家分享的内容是关于python字符串连接的几种方式总结,有需要的朋友参考一下 python中有很多字符串连接方式,今天在写代码,顺便总结一下,从最原始的字符串连接方式到字符串列表连接,大家感受下 python中有很多字符串连接方…

    编程技术 2025年2月27日
    200
  • Python的环境配置解析

    这次给大家带来Python的环境配置解析,Python环境配置解析的注意事项有哪些,下面就是实战案例,一起来看一下。 打算学习 Python 来做数据分析的你,是不是在开始时就遇到各种麻烦呢? 到底该装 Python2 呢还是 Python…

    编程技术 2025年2月27日
    200
  • Python Queue模块

    这篇文章主要介绍了python queue模块,现在分享给大家,需要的朋友可以参考下 Python中,队列是线程间最常用的交换数据的形式。Queue模块是提供队列操作的模块,虽然简单易用,但是不小心的话,还是会出现一些意外。 创建一个“队列…

    编程技术 2025年2月27日
    200
  • 利用python如何爬取js里面的内容

    本篇文章给大家分享的内容是3利用python如何爬取js里面的内容 ,有着一定的参考价值,有需要的朋友可以参考一下 一、在编写爬虫软件获取所需内容时可能会碰到所需要的内容是由javascript添加上去的 在获取的时候为空 比如我们在获取新…

    2025年2月27日 编程技术
    200
  • Python中title()方法的使用

    这篇文章主要介绍了python中title()方法的使用简介,现在分享给大家,需要的朋友可以参考下  title()方法返回所有单词的第一个字符大写的字符串的一个副本。语法 以下是title()方法的语法: str.title();登录后复…

    编程技术 2025年2月27日
    200
  • python实现百度语音识别api

    这篇文章主要为大家详细介绍了python实现百度语音识别api,具有一定的参考价值,有需要的朋友可以参考一下 本文实例为大家分享了ython实现百度语音识别的具体代码,供大家参考,具体内容如下 详细百度语音识别api文档 先下载python…

    编程技术 2025年2月27日
    200
  • Python Selenium Cookie 绕过验证码实现登录示例代码_

    这篇文章主要介绍了python selenium cookie 绕过验证码实现登录示例代码,现在分享给大家,有需要的朋友可以参考一下 之前介绍过通过cookie 绕过验证码实现登录的方法。这里并不多余,会增加分析和另外一种方法实现登录。 1…

    2025年2月27日
    200
  • python读取文本中数据并转化为DataFrame的实例_python

    这篇文章给大家分享的是python读取文本中数据并转化为dataframe的实例,具有一定的参考价值,希望可以帮助到有需要的人 在技术问答中看到一个这样的问题,感觉相对比较常见,就单开一篇文章写下来。 从纯文本格式文件 “file_in”中…

    2025年2月27日
    200
  • python怎么处理dataframe的时间字段

    这次给大家带来python怎么处理dataframe的时间字段,python处理dataframe时间字段的注意事项有哪些,下面就是实战案例,一起来看一下。 在机器学习过程中,通常会通过pandas读取csv文件,保持成dadaframe格…

    编程技术 2025年2月27日
    200

发表回复

登录后才能评论