首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从导入的函数调用的函数的奇怪输出

从导入的函数调用的函数的奇怪输出
EN

Stack Overflow用户
提问于 2014-03-31 03:51:53
回答 1查看 26关注 0票数 0

我在这里有这个代码:

代码语言:javascript
运行
复制
import random
def AI():
    choices = ["rock","paper","scissor"]
    return str(random.choice(choices))
print(AI)

这会打印出来:

代码语言:javascript
运行
复制
function AI at 0x0000000003527378

而不是rockpaperscissor

当我在shell中或在函数外执行时,它会正常返回和打印,但不是在函数中。我是Python的新手,所以这让我很困惑。谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-03-31 03:52:36

您需要通过在函数后面放置()来调用该函数:

代码语言:javascript
运行
复制
print(AI())

请看下面的演示:

代码语言:javascript
运行
复制
>>> 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)也不是必需的。下面的代码可以正常工作:

代码语言:javascript
运行
复制
return random.choice(choices)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22748976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档