关于Python中定制类的比较运算实例


Posted in Python onDecember 19, 2019

Python中的比较运算有几种:小于、小于等于、等于、大于等于、大于、不等于等。如果我们的数据对象具有明确的物理含义,比如说数值是带有数字与物理单位的字符串组合,那么进行大小比较的时候就可以做此定制。

下面针对6种比较方法中的一种来进行定制示范,选择小于判断来做尝试。

写如下示范代码:

class myClass:

    def __init__(self,value):

       self.value = value

    def __lt__(self,other):

       return int(self.value[:-1]) <int(other.value[:-1])

 

 

a = myClass('12a')

b = myClass('20a')

 

print(a < b)

代码执行结果:

grey@DESKTOP-3T80NPQ:/mnt/e/01_workspace/02_programme_language/03_python/03_OOP/2017/08/16$python compare.py

True

从上面看,myClass类的比较方法定制有效。上面例子中,对象的数值是带有单位的,其实是一个数值加单位的字符串。其中,单位就是'a'。如果进行小大比较,可以把单位剥离出去只进行数字的比较。于是,构建出上面的方法。

其实,其他的几种比较方法定制也与此类似。虽说不进行定制也能够完成我们要的功能,但是如果进行类似的定制我们可以获得可读性以及可维护性更好的软件。

以上这篇关于Python中定制类的比较运算实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python获取网页上图片下载地址的方法
Mar 11 Python
使用Python脚本来获取Cisco设备信息的示例
May 04 Python
Python实现连接两个无规则列表后删除重复元素并升序排序的方法
Feb 05 Python
Python实现批量读取图片并存入mongodb数据库的方法示例
Apr 02 Python
python中yaml配置文件模块的使用详解
Apr 27 Python
python实现可变变量名方法详解
Jul 01 Python
深入了解Python iter() 方法的用法
Jul 11 Python
树莓派极简安装OpenCv的方法步骤
Oct 10 Python
pytorch-RNN进行回归曲线预测方式
Jan 14 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
May 03 Python
详解pytorch中squeeze()和unsqueeze()函数介绍
Sep 03 Python
Python实现DBSCAN聚类算法并样例测试
Jun 22 Python
在python中利用try..except来代替if..else的用法
Dec 19 #Python
Python字符串的修改方法实例
Dec 19 #Python
python中property和setter装饰器用法
Dec 19 #Python
python装饰器代替set get方法实例
Dec 19 #Python
pandas factorize实现将字符串特征转化为数字特征
Dec 19 #Python
Python 解决OPEN读文件报错 ,路径以及r的问题
Dec 19 #Python
简单了解Python3 bytes和str类型的区别和联系
Dec 19 #Python
You might like
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
2008/11/18 PHP
七款最流行的PHP本地服务器分享
2013/02/19 PHP
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
2014/06/26 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
php+redis消息队列实现抢购功能
2018/02/08 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
JavaScript实现cookie的写入、读取、删除功能
2015/11/05 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
基于SpringMVC+Bootstrap+DataTables实现表格服务端分页、模糊查询
2016/10/30 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
JavaScript 巧学巧用
2017/05/23 Javascript
JavaScript实现兼容IE6的收起折叠与展开效果实例
2017/09/20 Javascript
vue项目中使用axios上传图片等文件操作
2017/11/02 Javascript
在Vue项目中引入JQuery-ui插件的讲解
2019/01/27 jQuery
使用layui 的layedit定义自己的toolbar方法
2019/09/18 Javascript
webpack优化之代码分割与公共代码提取详解
2019/11/22 Javascript
Python输出PowerPoint(ppt)文件中全部文字信息的方法
2015/04/28 Python
python中argparse模块用法实例详解
2015/06/03 Python
用Python抢过年的火车票附源码
2015/12/07 Python
Python二叉树的定义及常用遍历算法分析
2017/11/24 Python
对Python 窗体(tkinter)文本编辑器(Text)详解
2018/10/11 Python
Django objects的查询结果转化为json的三种方式的方法
2018/11/07 Python
python 读取修改pcap包的例子
2019/07/23 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
django框架auth模块用法实例详解
2019/12/10 Python
Python进阶之迭代器与迭代器切片教程
2020/01/29 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
澳大利亚最受欢迎的女士度假服装:Kabana Shop
2020/10/10 全球购物
请假条怎么写
2014/04/10 职场文书
2014年局领导班子自身建设情况汇报
2014/11/21 职场文书
2016新年年会主持词
2015/07/06 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
教你快速构建一个基于nginx的web集群项目
2021/11/27 Servers
golang用type-switch判断interface的实际存储类型
2022/04/14 Golang
解决Git推送错误non-fast-forward的方法
2022/06/25 Servers