在python中函数为true时运行循环

时间:2014-02-14 18:22:06

标签: python python-2.7 while-loop

我有一个返回TrueFalse的函数。我正在尝试执行一个循环,其中多次调用该函数,直到它返回False,并计算它运行的次数。

import random as rand

def test_function():
   return rand.random > 0.5

count = 0 

while test_function():
   count += 1

print count

所有这一切都在运行它,并保持它所获得的任何价值。

2 个答案:

答案 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