2011年02月02日 星期三 20:23
我的天哪。。今天弄了大半天了,小小几行代码就是搞不定。。
之前一直用函数写脚本。但是现在东西越来越大。。感觉不用oop不行了。
于是乎弄了一上午,短短几行代码就是搞不定。。
class Point:
def __init__(self, x=0, y=0):
self.x = x
self.y = y
def distance(self):
return ((self.x ** 2) + (self.y ** 2) ** 0.5)
if '__name__' == '__main__':
P = Point(3,4)
r = P.distance
print r
运行了以啥都没有。好歹在屏幕上出现个5啊。。。
但是如果在intractive cosole里面输入 P.x或者P.y的话都有,
但是输入 P.distance 就会出现
<bound method Point.distance_from_origin of <__main__.Point instance at 0x0345A440>>
何解?
2011年02月03日 星期四 04:23
试一下 P.distance(),
另外 return ((self.x ** 2) + (self.y ** 2) ** 0.5),这行有问题,应该是( (self.x ** 2) + (self.y ** 2) )**0.5
2011年02月03日 星期四 08:03
if __name__ == '__main__':
没有执行当然运行之后什么都没有
2011年02月03日 星期四 09:54
恩,格式应该是
if __name__ == '__main__':
P = Point(3,4)
r = P.distance
print r
__name__没有引号
2011年02月03日 星期四 17:12
恩。。。谢谢大家。。
没有引号和括号正解。。。
Zeuux © 2024
京ICP备05028076号