首页 > 解决方案 > 在 python 代码中找不到“名称未定义”的原因

问题描述

请原谅调试问题,一般来说是编码新手。无法理解为什么我的代码突然无法运行。我检查了似乎不是我的问题的错别字。

filepath = '/proper_noun.txt'

def pluralize(word):
  proper_nouns = [line.strip() for line in open (filepath)]
  for item in proper_nouns:                                  ### print out the list once.
    if (item==[-1]):
      break;

目前在谷歌colab工作。

在这一点上,我只是试图将“proper_nouns”中的项目返回到一个列表中以使球滚动。有任何想法吗?

print (proper_nouns)


---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-29-c6832e0493e8> in <module>()
----> 1 print (proper_nouns)

NameError: name 'proper_nouns' is not define

多谢你们。我希望这个问题遵循SOF礼仪

标签: pythonlistdirectory

解决方案


由于您在 Google Colab 上工作,我的猜测是您不小心从一开始就没有运行代码(例如,如果您选择从开始的代码for item in proper_nouns:并且只运行选定的部分,或者如果您将程序拆分到不同的单元格中) ,因此还没有定义proper_nouns。请确保您运行所有内容并告诉我们是否是这样。

编辑:我只是想到了另一个选择:函数中的行print(proper_nouns)pluralize?如果不是,作为函数的范围,proper_nouns没有在函数之外定义是正常的。要从外部访问它,您必须在函数外部声明它,或者返回它。


推荐阅读