我正在自学Python,并且遇到了类和模块的障碍。下面的代码是您可能永远不会写的东西,但是我只想了解我的错误。
import random
class GetRandom:
def __init__(self):
self.data = ""
def ranNumber():
return random.random()
b = GetRandom()
bnum = b.ranNumber
print bnum我得到的输出是:
<bound method GetRandom.ranNumber of <__main__.GetRandom instance at 0x7fe87818df38>>我原以为是0到1之间的随机数。我做错什么了?
谢谢
发布于 2014-04-11 16:42:41
这里有两个问题:
GetRandom.ranNumber。在其后面添加()以完成以下操作:
bnum = b.ranNumber()GetRandom.ranNumber接受在调用该方法时隐式传递的self参数:
def ranNumber(self):返回random.random()一旦您解决了这些问题,代码就会像预期的那样工作:
>>> import random
>>> class GetRandom:
... def __init__(self):
... self.data = ""
... def ranNumber(self):
... return random.random()
...
>>> b = GetRandom()
>>> bnum = b.ranNumber()
>>> print bnum
0.819458844177
>>>https://stackoverflow.com/questions/23018157
复制相似问题