`

类的定制

 
阅读更多
1. 定制自己的float类:
class RoundFloatManual(object):
    def __init__(self, val):
        assert isinstance(val, float), "Value must be a float!"
        self.value = round(val, 2)
    
    def __str__(self):
        #return str(self.value)
        return '%.2f' % self.value

    __repr__ = __str__

    


#rmf = RoundFloatManual(42)
#print rmf

rmf2 = RoundFloatManual(42.2)
print rmf2

rmf3 = RoundFloatManual(42.22)
print rmf3

rmf4 = RoundFloatManual(42.222)
print rmf4


2. 定制一个时间的类
class Time60(object):
    'Time60 - track hours and minutes'

    def __init__(self, hr, min):
        'Time60 constructor -takes hours and minutes'
        self.hr = hr
        self.min = min

    def __add__(self, other):
        'Time60 - overloading the addition operator'
        return self.__class__(self.hr + other.hr,
                              self.min + other.min)

    def __iadd__(self, other):
        'Time60 - overloading in-place addition'
        self.hr += other.hr
        self.min = other.min
        return self

    def __str__(self):
        'Time60 - string representation'
        return '%d:%d' % (self.hr, self.min)

    __repr__ = __str__

mon = Time60(10, 30)
tue = Time60(11, 15)
print mon, tue
print (mon + tue)

#print (mon-tue)

print id(mon)
mon += tue
print mon
print id(mon)
分享到:
评论

相关推荐

    用MFC类定制的打印Printing with MFC Made Easy

    "用MFC类定制的打印Printing with MFC Made Easy"是一个专题,旨在帮助开发者理解和利用MFC库中的打印功能,使得打印操作变得更加简单易行。 在MFC中,打印主要涉及到`CPrintInfo`、`CView`、`CDocument`和`...

    Python定制类设计.pdf

    总之,Python的类定制功能极大增强了编程的灵活性,允许开发者以面向对象的方式解决各种问题。通过了解和使用这些特殊方法,开发者能够创建出更加安全、高效和易于理解的程序,从而推动计算机科学技术行业的进一步...

    消防器材定制1消防器材定制1.pptx

    C类定制同样强调了消防器材的定位和数量,例如在营业室配置8KG干粉灭火器,配电间配备2KG二氧化碳灭火器,并在消防器材箱内储备消防工具。消防器材箱的存在为站点增加了额外的应急准备,使得员工能够在火情发生时...

    slush-gulpfile:快速生成亲类定制的gulpfile.js

    快速生成亲类定制的gulpfile.js 基于: 特征 超能力 转 图像最小 jshint CSS 预处理器 入门 安装 全局安装slush-gulpfile : $ npm install -g slush-gulpfile 请记住也要全局安装slush ,如果您还没有: $ ...

    移动定制安卓IPHONE 四吉手机资料

    3. **专属优惠**:购买这类定制手机的用户有时还能享受到中国移动提供的专属优惠,比如话费赠送、流量包优惠等。 4. **售后服务**:中国移动可能会为定制手机提供专门的售后服务渠道,以便于解决用户遇到的问题。 #...

    Android私人定制版信息提示

    这类定制版可能包括特定的界面设计、功能模块、安全策略等,以满足非通用的使用场景。在这个主题中,"Android私人定制版信息提示"可能涉及到如何在Android系统或应用中实现个性化的信息通知与提醒服务。 首先,我们...

    参数定制服务在STM32应用中的解决方案.pdf

    STM32F103x系列微控制器因其基于ARM Cortex-M3处理器核的设计,以及丰富的片上外设资源,成为实现这类定制化应用的理想选择。 STM32F103x是意法半导体公司生产的微控制器,它内置了一个基于ARMv7-M体系结构的32位...

    响应式家装全屋定制类网站源码 pbootcms装修设计装潢公司网站模板

    响应式家装全屋定制类网站源码 pbootcms装修设计装潢公司网站模板 安装教程https://www.a5ymg.cn/480.html (自适应手机端)响应式家装全屋定制类网站源码 pbootcms装修设计装潢公司网站模板

    关于定制化业务类系统代码管理分析和解决方案

    ### 关于定制化业务类系统代码管理分析和解决方案 #### 一、背景介绍 随着信息技术的发展,越来越多的企业开始重视定制化软件的开发,以满足自身特定的业务需求。然而,在定制化软件开发过程中,如何有效地进行代码...

    A Software Customization Framework

    这个分类学包括但不限于以下几类定制化概念: - **功能性定制**:涉及软件功能的增加、修改或删除。 - **界面定制**:调整用户界面布局、外观和交互方式等。 - **行为定制**:改变软件的行为逻辑,如算法的选择、...

    家具家居类企业网站源码 家私定制公司企业网站模板

    家具家居类企业网站源码 家私定制公司企业网站模板 模板编码:UTF8 模板分类:建材、家居、家具、电器 适合行业:家具家居类企业 家具家居类企业网站源码 家私定制公司企业网站模板 模板编码:UTF8 模板分类:建材...

    java开发技术

    在实际开发中,开发者需要根据项目需求选择合适的组件、容器和布局管理器,并利用辅助类定制UI的外观。此外,Swing还支持事件监听,使得组件能够响应用户的交互,例如点击按钮或输入文本。通过实现EventListener接口...

    博克定制系统 免费使用 单体定制 团体定制 自动归码功能 超排功能 直接下载安装.zip

    博克定制系统是一款专为服装行业设计的CAD(计算机辅助设计)软件,它提供免费版本供用户使用。这款系统集成了单体定制和团体定制的功能,以满足不同用户的需求,无论是个体消费者还是企业团队,都能高效地进行服装...

    vc++ MFC 编程实例(10)

    通过继承特定的MFC控件类并重写必要的成员函数,我们可以实现对控件窗口的高度定制。 **步骤** 1. **创建子类** 继承自`CButton`或其他所需的MFC控件类,创建一个新的类。在这个新类中,可以根据需求重写某些...

    创意产品市场调查报告.doc

    在过去的一年里,有超过四分之一的市民有过个人定制购买的经历,其中生活类定制占据了最大比例。随着3D互动模式和品牌化主题体验购物商城的兴起,定制服务正逐渐成为主流,尤其是在美食、旅游纪念品和个人出行路线等...

    jfreechart几个例子

    例如,可以使用`ChartTitle`类设置图表标题,`LegendItem`类定制图例项,`XYAxis`类调整X轴和Y轴的属性。 4. **数据系列**:数据通常是通过`Dataset`接口表示的,比如`CategoryDataset`用于柱状图和折线图,`...

    精品社会调研范文-创意产品市场调查报告.doc

    个性生活定制在过去一年中受到了广泛关注,28.38%的市民有过定制商品或服务的经历,其中以生活类定制最为常见,占比46.96%。随着3D互动模式和品牌化主题体验购物商城的兴起,线下体验和线上定制已成为主流,定制消费...

    Visual C++ MFC编程实例.PDF

    1.5 怎样使用MFC创建一个窗口类 11 1.5.1 使用AfxRegisterWndClass () 函数注册一个窗口类 11 1.5.2 使用AfxRegisterClass ()函数 创建一个窗口类 12 1.6 怎样销毁一个MFC窗口类 14 1.7 厂商安装的窗口类 14 1.8 ...

    Visual C++MFC编程实例

    1.5 怎样使用MFC创建一个窗口类 11 1.5.1 使用AfxRegisterWndClass () 函数注册一个窗口类 11 1.5.2 使用AfxRegisterClass ()函数 创建一个窗口类 12 1.6 怎样销毁一个MFC窗口类 14 1.7 厂商安装的窗口类 14 1.8 ...

Global site tag (gtag.js) - Google Analytics