Python实现EXCEL表格的排序功能示例


Posted in Python onJune 25, 2019

EXCEL的数值排序功能还是挺强大的,升序、降序,尤其自定义排序,能够对多个字段进行排序工作。

那么,在Python大法中,有没有这样强大的排序功能呢?答案是有的,而且本人觉得Python的排序功能,一点不比EXCEL的差。

同样,我们依然用到的是强大的pandas这个三方库。我们先将numpy和pandas导入进来:

Python实现EXCEL表格的排序功能示例

接着构造一个今天要用到的DataFrame,我们用字典的形式来构造。

Python实现EXCEL表格的排序功能示例

都是随意构造的,内容别较真。我们先来个简单点的热热身,按照身高的降序来排列一下。

Python实现EXCEL表格的排序功能示例

我们用到的是df.sort_values()这个函数。第一个参数为by,传入你要排序的列的标签名即可,后面的ascending参数指示排序方法为升序还是降序,True为升序,False为降序。由于存在相同的身高,pandas会自动的比较两个相同身高所对应的index,按照index的升序来排列。

假如我有这样一个需求:先按照身高降序排序,若存在相同的身高,则再按照武力来降序排序,可以做到吗?

当然可以,我们只需要在by参数里传入列标签组成的列表即可。

Python实现EXCEL表格的排序功能示例

通过这个例子我们可以看到,by参数不但可以传入字符串,还可以传入字符串组成的列表,来实现对多个列进行排序。

接着,我的要求再高一点。身高我依然需要降序,但是武力我需要升序,可以吗?

我们直接上结果:

Python实现EXCEL表格的排序功能示例

跟by参数类似,我们只需要在ascending参数中也传入布尔值组成的列表就可以了,意思就是告诉pandas,这两列我各自需要的排序方式,就跟后面ascending参数里指定的一样。因此,这两个参数的列表内的元素个数需要是一致的,否则就会报错了,因为没法一一对应。

关于sort_values这个强大的排序函数就介绍到这了。除了这些参数之外,它还有inplace、kind和na_position等参数来应对不同的排序需求。可以参考官网文档进行学习

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python的Flask框架实现视频的流媒体传输
Mar 31 Python
深入解析Python中的WSGI接口
May 11 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
Jun 30 Python
python编写暴力破解zip文档程序的实例讲解
Apr 24 Python
python验证码识别教程之滑动验证码
Jun 04 Python
Python实现的从右到左字符串替换方法示例
Jul 06 Python
Python中GIL的使用详解
Oct 03 Python
Django框架的中的setting.py文件说明详解
Oct 15 Python
使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解
Jan 25 Python
python中二分查找法的实现方法
Dec 06 Python
Python基础知识学习之类的继承
May 31 Python
python中的random模块和相关函数详解
Apr 22 Python
python实现动态创建类的方法分析
Jun 25 #Python
python pandas写入excel文件的方法示例
Jun 25 #Python
python多线程http压力测试脚本
Jun 25 #Python
Pyqt5 基本界面组件之inputDialog的使用
Jun 25 #Python
对PyQt5的输入对话框使用(QInputDialog)详解
Jun 25 #Python
如何使用Python标准库进行性能测试
Jun 25 #Python
python绘制评估优化算法性能的测试函数
Jun 25 #Python
You might like
php中sprintf与printf函数用法区别解析
2014/02/17 PHP
php在apache环境下实现gzip配置方法
2015/04/02 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
php框架CodeIgniter使用redis的方法分析
2018/04/13 PHP
实例分析PHP将字符串转换成数字的方法
2019/01/27 PHP
IE6下通过a标签点击切换图片的问题
2010/11/14 Javascript
js常用代码段收集
2011/10/28 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
jQuery操作Select的Option上下移动及移除添加等等
2013/11/18 Javascript
探讨jQuery的ajax使用场景(c#)
2013/12/03 Javascript
常用jQuery代码分享
2015/07/14 Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
2016/05/31 Javascript
Node.js环境下编写爬虫爬取维基百科内容的实例分享
2016/06/12 Javascript
ajax的分页查询示例(不刷新页面)
2017/01/11 Javascript
vue-element-admin 菜单标签失效的解决方式
2019/11/12 Javascript
JS实现炫酷雪花飘落效果
2020/08/19 Javascript
使用JavaScript实现贪吃蛇游戏
2020/09/29 Javascript
python在多玩图片上下载妹子图的实现代码
2013/08/13 Python
python实现自动更换ip的方法
2015/05/05 Python
详解Python中的type()方法的使用
2015/05/21 Python
在VS Code上搭建Python开发环境的方法
2018/04/06 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
Python3.0 实现决策树算法的流程
2019/08/08 Python
python数据爬下来保存的位置
2020/02/17 Python
python读取文件指定行内容实例讲解
2020/03/02 Python
python使用隐式循环快速求和的实现示例
2020/09/11 Python
基于Python采集爬取微信公众号历史数据
2020/11/27 Python
Python爬虫教程之利用正则表达式匹配网页内容
2020/12/08 Python
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
Nike爱尔兰官方网站:Nike.com (IE)
2018/03/12 全球购物
Guess荷兰官网:美国服饰品牌
2020/01/22 全球购物
弘扬职业精神演讲稿
2014/03/20 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
拓展训练激励口号
2014/06/17 职场文书
告诉你创业计划书的8个实用技巧
2019/07/12 职场文书
Java 获取Word中所有的插入和删除修订的方法
2022/04/06 Java/Android