我有一个返回True
或False
的函数。我正在尝试执行一个循环,其中多次调用该函数,直到它返回False
,并计算它运行的次数。
import random as rand
def test_function():
return rand.random > 0.5
count = 0
while test_function():
count += 1
print count
所有这一切都在运行它,并保持它所获得的任何价值。
答案 0 :(得分:4)
您忘记了实际拨打rand.random
。在其后添加()
来执行此操作:
return rand.random() > 0.5
以下是演示:
>>> import random as rand
>>> rand.random
<built-in method random of Random object at 0x01DC02A8>
>>> rand.random()
0.4878133430124779
>>>
现在,您的代码正在测试函数对象本身是否大于0.5
。
答案 1 :(得分:3)
您必须使用()
调用该函数。
return rand.random() > 0.5