【发布时间】:2018-12-06 23:58:31
【问题描述】:
我有以下代码:
def myFunction(param, param):
myList = ["",[],[],[]]
#code to fill up myList
for q,d in enumerate(detailCollection):
#all the fun stuff here
yield{
"var1":myList[0],
"var2":myList[1],
#and so on
}
我得到的错误如下:
NameError: name 'myList' is not defined
来自yield 语句中的行
出于隐私目的,我没有包含实际代码,但这与正在发生的情况相同。为什么myList 明确在同一个函数范围内时没有定义,我该如何解决这个问题?我宁愿不将 myList 变量完全移出并将其称为全局变量,以保持代码简洁明了有没有办法在不移动 myList 声明/定义的情况下做到这一点?
【问题讨论】:
-
您发布的代码不会出现该错误。如果你真的需要帮助,你只需要发布你的实际代码。
-
nvm 我只是一个彻头彻尾的白痴哈哈。我在收益中的一个变量中完全忽略了
_。所以......你是对的:)这也是我发布这个问题的部分原因,因为我觉得真的很愚蠢哈哈
标签: python function variables scope