关于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使用getpass库读取密码的示例
Oct 10 Python
Python Nose框架编写测试用例方法
Oct 26 Python
Python实现的批量修改文件后缀名操作示例
Dec 07 Python
python读取有密码的zip压缩文件实例
Feb 08 Python
Django中使用Whoosh进行全文检索的方法
Mar 31 Python
python实现单链表的方法示例
Sep 03 Python
numpy np.newaxis 的实用分享
Nov 30 Python
Python求平面内点到直线距离的实现
Jan 19 Python
解决paramiko执行命令超时的问题
Apr 16 Python
Selenium Webdriver元素定位的八种常用方式(小结)
Jan 13 Python
教你用Python写一个植物大战僵尸小游戏
Apr 25 Python
python爬取豆瓣电影TOP250数据
May 23 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
php中并发读写文件冲突的解决方案
2013/10/25 PHP
PHP获取php,mysql,apche的版本信息示例代码
2014/01/16 PHP
PHP定时任务获取微信access_token的方法
2016/10/10 PHP
php写app接口并返回json数据的实例(分享)
2017/05/20 PHP
javascript加号&quot;+&quot;的二义性说明
2013/03/04 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
zTree插件之单选下拉菜单实例代码
2013/11/07 Javascript
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
浅谈angularjs依赖服务注入写法的注意点
2017/04/24 Javascript
利用jquery去掉时光轴头尾部线条的方法实例
2017/06/16 jQuery
Echarts基本用法_动力节点Java学院整理
2017/08/11 Javascript
node+koa实现数据mock接口的方法
2017/09/20 Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
2017/10/06 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
2018/05/16 Javascript
jQuery基于闭包实现的显示与隐藏div功能示例
2018/06/09 jQuery
webpack打包react项目的实现方法
2018/06/21 Javascript
vue.js中使用echarts实现数据动态刷新功能
2019/04/16 Javascript
详解微信UnionID作用
2019/05/15 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
2019/09/21 Javascript
Vue之Mixins(混入)的使用方法
2019/09/24 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
Python中计算三角函数之cos()方法的使用简介
2015/05/15 Python
在Lighttpd服务器中运行Django应用的方法
2015/07/22 Python
python实现多线程的方式及多条命令并发执行
2016/06/07 Python
Sanic框架请求与响应实例分析
2018/07/16 Python
python中return如何写
2020/06/18 Python
CSS3用@font-face实现自定义英文字体
2013/09/23 HTML / CSS
纯HTML5+CSS3制作生日蛋糕代码
2016/11/16 HTML / CSS
在HTML5中使用MathML数学公式的简单讲解
2016/02/19 HTML / CSS
圣诞树世界:Christmas Tree World
2019/12/10 全球购物
美国最大的在线生存商店:Survival Frog
2020/12/13 全球购物
幼儿教师培训感言
2014/03/08 职场文书
班委竞选演讲稿
2014/04/28 职场文书
公司年会策划方案
2014/05/17 职场文书
小学优秀学生评语
2014/12/29 职场文书
VUE递归树形实现多级列表
2022/07/15 Vue.js