__cmp__

对 int、str 等内置数据类型排序时,Python的 sorted() 按照默认的比较函数 cmp 排序,但是,如果对一组 Student 类的实例排序时,就必须提供我们自己的特殊方法 __cmp__():

class Student(object):     def __init__(self, name, score):         self.name = name         self.score = score     def __str__(self):         return '(%s: %s)' % (self.name, self.score)     __repr__ = __str__     def __cmp__(self, s):         if self.name < s.name:             return -1         elif self.name > s.name:             return 1         else:             return 0

上述 Student 类实现了__cmp__()方法,__cmp__用实例自身self和传入的实例 s 进行比较,如果 self 应该排在前面,就返回 -1,如果 s 应该排在前面,就返回1,如果两者相当,返回 0。

python中 s是什么意思_这里面的s.name是什么意思啊?相关推荐

  1. python中五种下划线 _

    python中五种下划线 "_" 单前导下划线:_var 单末尾下划线:var_ 双前导下划线:__var 双前导和末尾下划线:var 单下划线:_ 在文章结尾处,你可以找到一个简 ...

  2. python中脚本是指什么_【学习猿地】初识python脚本 #千万别看,我怕你控制不住...

    >编写python程序的文件,称为python的脚本或程序 >要求当前的python脚本的文件后缀名必须是.py #### pycharm使用注意 > 需要明确的知道你当前pycha ...

  3. python中mod是什么意思_【python中,mod_python到底做了些什么呢?】mod python 教程

    python 编程小白 ,不会用doctest 请大神指教怎么用!! >>> >>> def is_between(v, lower, higher): ...   ...

  4. python中numpy数组的合并_基于Python中numpy数组的合并实例讲解

    基于Python中numpy数组的合并实例讲解 Python中numpy数组的合并有很多方法,如 - np.append() - np.concatenate() - np.stack() - np. ...

  5. python中二进制和文本不同_关于Python字符编码与二进制不得不说的一些事

    二进制 核心思想: 冯诺依曼 + 图灵机 电如何表示状态,才能稳定? 计算机开始设计的时候并不是考虑简单,而是考虑能自动完成任务与结果的可靠性, 简单始终是建立再稳定.可靠基础上 经过尝试10进制,但 ...

  6. python中sub是什么意思_相当于Python中R的sub和paste(字符串和数字的连接)

    以前,在R中,我使用sub和paste将字符串和数字连接在一起. 我发现Python有点难.下面是Python中的示例代码import pandas as pd from numpy.random i ...

  7. python中的符号下划线_详解Python中下划线的使用方法

    编程派微信号:codingpy 这篇文章讨论Python中下划线_的使用.跟Python中很多用法类似,下划线 _ 的不同用法绝大部分(不全是)都是一种惯例约定. 单个下划线(_) 主要有三种情况: ...

  8. python中var是什么变量_一、 Python概述、变量

    一.        Python概述 1.python是一门面向对象,解释型的脚本语言.语法简洁,编写效率高,但是执行(底层运行)效率低(总的来说解释语言执行效率低于编译语言). 注意:本博客所有的代 ...

  9. python中oo是什么意思_什么_和__在PYTHON中意味着什么

    在Python中,它意味着你所说的意思.下划线是名称中的有效字符. (但是,如果您使用的是IPython,请参阅Martin's fine answer.) Python 2.7.5 (default ...

最新文章

  1. canvas-绘制矩形-读书笔记
  2. 生活实遇记-Kindle好久没用,屏幕一直处于电池状态,怎么解决?
  3. [工具]Mac下非常好用的快捷终端Dterm
  4. linux命令菜鸟ping,Linux ping命令
  5. C#使用Cookie方法
  6. Scala IDE for Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)
  7. VFP下利用API调用帮助
  8. 图像学习-HOG特征
  9. java ftp连接成功 上传失败_ftp自动上传工具,如何设置及配置ftp自动上传工具
  10. Linux宝库名人轶事栏目 | 感恩每一天
  11. Matlab矩阵大全
  12. python3的spyder安装_Python开发环境Spyder安装教程
  13. 怎么用c语言编写2的n次方,2的n次方用C语言怎么编写程序
  14. 冯提莫与斗鱼“好聚好散”复制一个当红女主播要迈过多少难关?
  15. CSS解决hover选择器生硬效果
  16. 第三方软件测试z5x电池,vivo Z5x第三方续航测试结果公布,刷新手机业续航排行榜...
  17. 新电脑怎么把计算机放在桌面,新安装的Win10怎么将“我的电脑”放在桌面
  18. 关于jmeter中编写shell脚本json的应用
  19. 国外大学网上免费课程
  20. 全国专业技术人员计算机应用能力考试 excel2003 注册码,全国专业技术人员计算机应用能力考试Excel2003题库版...

热门文章

  1. 标签云的实现(使用jQuery插件jqcloud)
  2. 《使命召唤》官方秘籍
  3. 0005 前端 Html 04 AutoFileName 图片的显示 文字链接 图片链接 页面内链接 列表 加超链接的列表
  4. 跨境电商亚马逊运营的五大小技巧你都知道哪些
  5. 自己写一个控制台人脸识别程序
  6. 刺激战场 枪支性能雷达图分析
  7. 终端便捷ssh(免密)连接
  8. 深圳求职指南(2004版)
  9. 2022年中小企业上云首选,华为云省钱攻略
  10. Vue学习随笔+商城项目【上】