【发布时间】:2019-10-27 06:31:12
【问题描述】:
“我在 python 中创建一个函数列表,但是当我运行程序时,列表中的所有函数都会被自动调用。”
“我已经在 python 3.7.3 上尝试过,同样的概念我也在 C++ 中尝试过,但它也做了同样的事情。”
def a():
print ('a')
def b():
print('b')
def c():
print('c')
def d():
print('d')
aa=[a(),b(),c(),d()]
print(aa[1])
“我希望 aa[1] 的输出是 'b',但是在输出中所有函数都被调用并给出了输出 一种 b C d 没有 "
【问题讨论】:
-
你的函数没有返回任何东西。
-
将您的
print(#)更改为return # -
你在这里显式调用你的所有函数:
aa=[a(),b(),c(),d()]. -
您的函数正在运行,但不是自动运行;您在定义
aa的表达式中显式调用它们。问题是您将标准输出与函数调用的值混淆了。 -
查看这个可爱的debug 博客寻求帮助。还可以尝试阅读有关函数调用的教程。这些应该有助于解决您的一些问题,并将混淆减少到您可以处理的一两点。