python3 自定义排序_Python3中的自定义排序
我开始学习python3。
我想知道如何执行自定义排序。例如,我可能希望按照以下方式对动物列表进行排序:先按字符升序排序,然后按长度降序排序,然后按字母数字升序排序。在
一个由“蚂蚁”、“羚羊”、“斑马”、“食蚁兽”组成的列表在正确排序后会变成“食蚁兽”、“羚羊”、“蚂蚁”、“斑马”。在
我读了一些文档,但不太了解sort方法的“key”参数。有什么例子吗?
附言:这不是大学作业问题。我只是想玩一下python。在
我很早以前就学会了java,可能已经实现了如下自定义排序:
在import java.util.*;
public class sortDemo implements Comparator {
public static void main(String[] args) {
ArrayList animals = new ArrayList();
animals.add("ant");
animals.add("antelope");
animals.add("zebra");
animals.add("anteater");
for (String a:animals){
System.out.println(a);
}
System.out.println();
// want output to be anteater, antelope, ant, zebra following the sort
Collections.sort(animals, new sortDemo());
for (String a:animals){
System.out.println(a);
}
}
public int compare(String s1, String s2) {
if (s1.charAt(0) > s2.charAt(0)){
return 1;
} else if (s1.charAt(0) == s2.charAt(0)){
if(s1.length() < s2.length()) {
return 1;
} else if (s1.length() == s2.length()) {
return s1.compareTo(s2);
} else {
return -1;
}
} else {
return -1;
}
}
}
python3 自定义排序_Python3中的自定义排序相关推荐
- mysqlorderby数字字符串排序_Python中的元组排序和深度比较
比较Python中的东西.这听起来几乎是不需要教的,但是我发现Python的比较运算符经常被Python新手误解和低估. 我们来回顾一下Python的比较运算符如何处理不同类型的对象,然后看看如何使用 ...
- java 排序_Java中常见的排序算法有哪些?---选择排序
排序相关的的基本概念 排序: 将一组杂乱无章的数据按一定的规律顺次排列起来. 数据表( data list): 它是待排序数据对象的有限集合. 排序码(key):通常数据对象有多个属性域, 即多个数据 ...
- java中queue排序_Java中常见的排序算法有哪些?---选择排序
排序相关的的基本概念 排序: 将一组杂乱无章的数据按一定的规律顺次排列起来. 数据表( data list): 它是待排序数据对象的有限集合. 排序码(key):通常数据对象有多个属性域, 即多个数据 ...
- java map 自动排序_Java中Map的排序
Map的种类 在Java中,Map的主要作用是存储键值对.由于是根据键得到值,所以不允许键重复.它主要有如下几个类别: HashMap: 最常用的Map,它根据键的HashCode值存储数据,根据键可 ...
- python对数字排序_Python中数据的排序
目录 列表的排序 列表的排序可以使用列表自带的 sort() 方法,也可以使用 sorted() 函数 sort() 方法是修改原列表:而 sorted() 函数是对列表的复制再排序,返回一个新的列表 ...
- python升序和降序排序_python中序列的排序,包括字典排序、列表排序、升序、降序、逆序...
一.基础概念 我们知道python中的内建序列包括字典.列表.元组.字符串等,序列是python中最基本的数据结构. 列表.元组.字符串这类的序列的索引默认第一个元素的索引从0开始,第二个元素的索引是 ...
- java util 排序_Java中常见的排序方法
本博主要介绍Java中几种常见的排序算法: /* 排序方法的演示 1)插入排序(直接插入排序.希尔排序) 2)交换排序(冒泡排序.快速排序) 3)选择排序(直接选择排序.堆排序) 4)归并排序 5)分 ...
- html段落自动排序,word中怎么自动排序段落
对于使用了自动编号的 Word 文档,可以方便地在文档结构图中拖放段落,实现段落的重新排序并自动编号.那么下面就由学习啦小编为大家分享下word中自动排序段落的技巧,希望能帮助您. word中自动排序 ...
- java合并排序_Java中的合并排序算法
合并排序算法是一种分而治之的算法.在分而治之的范式中,一个问题被分解成较小的问题,其中每个小问题仍然保留着大问题的所有属性--大小除外.为了解决原始问题,每个部分都是单独解决的,然后这些部分又合并在一 ...
最新文章
- 微信 request 合法域名校验出错
- 提高 Github 下载速度的方法「100% 有效」可达到 2MB/s
- 深度解析:AWS、谷歌云、IBM Cloud和微软 Azure四巨头2018将会有哪些布局?
- 专题 15 TCP套接字编程
- Unet实现图像分割(一)
- 从零开始的51单片机——VsCode+EIDE环境搭建
- input 只输入数字并限制最大输入长度
- 使用 python 一键搭建文件服务器
- 印度威普罗集团斥资5 亿美元收购云计算解决方案供应商 Appirio
- 数据可视化,必须注意的30个小技巧!
- 【HRBUST - 1613】迷宫问题 (bfs)
- TensorFlow7-多元线性回归模型
- Java多线程编程核心技术-多线程基础使用
- Java内嵌秒表_【Java】Java计时器(秒表)(示例代码)
- java基础(5)-集合类1
- 李宏毅自然语言处理——Self Attention
- 插件对计算机的运行有什么影响吗,电脑插件太多导致电脑运行缓慢怎么办 - 驱动管家...
- 太强了,用Python+Excel制作天气预报表!
- centos radius mysql_[原创]CentOS下Radius服务器搭建
- win10黑屏假死怎么解决
热门文章
- 分布式 Spring Cloud 基于 Spring Boot 开发一整套
- 最好免费的 HTML5 JS 网站视频播放器收集
- 多目标跟踪评价标准(MOT)
- Java之抽象类(Abstract Class)与抽象方法(Abstract Method)
- 基于物品的协同过滤mysql_百万用户,八十万商品,如何计算基于物品的协同过滤...
- 4g内存电脑装xp系统怎么样_系统坏了?去店了重装系统又贵?今天手把手教你如何重装系统...
- php删除下拉框记录,删除一条数据_php删除一条记录(删除确认提示)
- 有关计算机方面的知识竞赛,关于计算机知识竞赛试题
- 文本导入数据到oracle_教你如何把文本数据导入Oracle中
- CodeForces 828C String Reconstruction(并查集思想)