zoukankan      html  css  js  c++  java
  • Python property

    闲来无事,早就听说Python很优雅,来把玩一番,直接上代码撒

    #===============================================================================
    # @author: Cody
    # @date: 2013-05-09
    #===============================================================================
    
    
    '''
        property 完成了类似java中getter,setter的功能,甚至还包括了del属性的功能,具体使用方法两种
        如下面的例子所示
    '''
    
    class Cody:
        def __init__(self):
            self._x = None
            
        def getX(self):
            return self._x
        
        def setX(self,x):
            self._x = x
            
        def delX(self):
            del self._x
            
        x = property(getX,setX,delX,"test Property ")
    
    
    class Tom:
        def __init__(self,y = 0):
            self._y = y
    
        @property
        def y(self):
            return self._y
        
        @y.setter
        def y(self,y):
            self._y = y
        
        @y.deleter
        def y(self):
            del self._y
        
    if __name__ == "__main__":
        cody = Cody()
        cody.x = 10;
        
        print(cody.x)
        del cody.x
        print(cody.x)   # AttributeError: 'Cody' object has no attribute '_x'
  • 相关阅读:
    某个sql帖子的答题
    JQuery hide
    JQuery tr 循环,删除td
    JQuery Disabled
    QueryString大小设置
    Silverlight HelloWorld
    USB HID通讯流程
    动态调用c++dll(转)
    VB应用程序调用c++编写的动态库(dll)(转)
    读取图像
  • 原文地址:https://www.cnblogs.com/cody1988/p/3069107.html
Copyright © 2011-2022 走看看