我在这里有这个代码:
import random
def AI():
choices = ["rock","paper","scissor"]
return str(random.choice(choices))
print(AI)
这会打印出来:
function AI at 0x0000000003527378
而不是rock
、paper
或scissor
。
当我在shell中或在函数外执行时,它会正常返回和打印,但不是在函数中。我是Python的新手,所以这让我很困惑。谢谢
发布于 2014-03-31 03:52:36
您需要通过在函数后面放置()
来调用该函数:
print(AI())
请看下面的演示:
>>> import random
>>> def AI():
... choices = ["rock","paper","scissor"]
... return str(random.choice(choices))
...
>>> print(AI)
<function AI at 0x0236CFA8>
>>> print(AI())
rock
>>>
此外,在str
中包装random.choice(choices)
也不是必需的。下面的代码可以正常工作:
return random.choice(choices)
https://stackoverflow.com/questions/22748976
复制相似问题