Python学习B

print "\nCircle is a subclass of point:", \
issubclass(Circle,Point)
这样写的一个目的就是可以分开来写代码的哦。将下面的内容放在下面去!
issubclass表示的是  这两个类之间是否有 父子类的关系。
1.定义类:
class Circle(Point):
    def __init__(self,x=0,y=0,radiusValue=0.0):
        Point.__init__(self, x, y);
        self.radius = float(radiusValue)
        
    def area(self):
        return math.pi*self.radius**2
circle = Circle(22,30,20.2)  构造函数  通过在我们的构造方法中进行构造出来的一个对象了!
isinstance(circle,Point)     判断是否是实例。
现 在我们发现了PYTHON中的两个关键字哦!
在子类中可以这样来调用父类中的构造方法进行操作的:
Point.__init__(self, x, y);
看看如下 的代码块吧:
class Point:
    def __init__(self,xValue,yValue):
        self.x = xValue
        self.y = yValue
    def __str__(self):
        return "(%d,%d)"%(self.x,self.y)
   
def main():                #相当于我们定义了一个主方法了JAVA中的主方法了。
    point =Point(12,25)    #得到一个对象
    print "X is :",point.x
    print "Y is :",point.y
    point.x = 10
    point.y = 20
    print "The new location is:",point
   
if __name__ == "__main__":  #调用这个主方法了哦!它是用命名空间进行处理的哦!
    main()
from PointModule import Point  #可以从一个模块中导入进来一个类哦!
isCrowded = staticmethod(isCrowed) 在JAVA中的static 方法在python中是如此应用了!
传递self表示的是:传递对象引用参数。这样的话通过类的对象能够引用这个方法的哦!
在这里因为是静态方法所 以不用传递对象引用参数进来的哦!直接调用就可以了的!
这里的属性相当于我们的JAVA为中的一样的哦只是除了GET SET之外加了一个DEL属性而已啊!
讲一下异常处理:
number1 = raw_input("Enter numberator:")
number2 = raw_input("Enter denominator:")
try:
    number1 = float(number1)
    number2 = float(number2)
    result = number1/number2
except ValueError:
    print "you enter is error"
except ZeroDivisionError:
    print "Attemted to divide by zero"
else:
    print "%.3f/%.3f=%.3f"%(number1,number2,result)
想想在JAVA中的我们是这样来处理的:
try{}
catch(Exception ){}
catch(Exception ){}
跟这种写法是一样的哦!
调用 一个方法跟JAVA中一样直接写方法名就可以了!
结构如下:
try:
    function1()
except Exception,exception:
    print "Exception caught in main program"
    #print "\nException arguments:",exception.args
    traceback.print_exc()
finally:
    print "errorsss"
这样写就可以了!