Python Error NameError: name '…' is not defined
Python Error NameError: name '…' is not defined
我是编程新手,尤其是 Python。如果有帮助,我正在尝试免费的 Udacity class 位于此处:
https://www.udacity.com/course/viewer#!/c-ud088/l-3621198668/m-3612388742
我在该视频的 1:14 时间戳。
不同之处在于,与 Python 2.7 版本相比,我在 Windows 10 上安装了 Python 3.5 版。我还使用 Sqlalchemy 1.0.9 版(他们使用的是 0.9 版)。我已经能够将他们的说明从他们的版本翻译成新版本。但是,当我收到以下错误时,我不确定出了什么问题。
在 Python 控制台中,我输入:
items = session.query(MenuItems).all()
我收到以下错误消息:
回溯(最近调用最后):
文件“”,第 1 行,在“
NameError: 名称 'MenuItems' 未定义
如果我遗漏了什么,请告诉我。先谢谢你了。
这意味着您没有名为 MenuItems 的对象(您是否拼写不同?)。您需要先定义一些东西,然后再使用它。
您应该有类似于以下的语句:
MenuItems = {... code}
NameError: name 'MenuItems' is not defined
当您遇到该错误时,您要么在定义之前使用了某个名称,要么在导入之前使用了该名称。为避免这种情况,您会期望在某处出现 from x import MenuItem
或 MenuItem = ...
或 class MenuItem
之类的定义
之前看了几个视频,老师是这样导入的:
from database_setup import Base, Restaurant, MenuItem
因此,如果您已经观看了视频,您应该在 database_setup.py
中定义了一个 class MenuItem
我建议您重新观看 "Putting it All Together",这样您就可以正确地使用模块和导入。
我是编程新手,尤其是 Python。如果有帮助,我正在尝试免费的 Udacity class 位于此处:
https://www.udacity.com/course/viewer#!/c-ud088/l-3621198668/m-3612388742
我在该视频的 1:14 时间戳。
不同之处在于,与 Python 2.7 版本相比,我在 Windows 10 上安装了 Python 3.5 版。我还使用 Sqlalchemy 1.0.9 版(他们使用的是 0.9 版)。我已经能够将他们的说明从他们的版本翻译成新版本。但是,当我收到以下错误时,我不确定出了什么问题。
在 Python 控制台中,我输入:
items = session.query(MenuItems).all()
我收到以下错误消息:
回溯(最近调用最后): 文件“”,第 1 行,在“ NameError: 名称 'MenuItems' 未定义
如果我遗漏了什么,请告诉我。先谢谢你了。
这意味着您没有名为 MenuItems 的对象(您是否拼写不同?)。您需要先定义一些东西,然后再使用它。 您应该有类似于以下的语句:
MenuItems = {... code}
NameError: name 'MenuItems' is not defined
当您遇到该错误时,您要么在定义之前使用了某个名称,要么在导入之前使用了该名称。为避免这种情况,您会期望在某处出现 from x import MenuItem
或 MenuItem = ...
或 class MenuItem
之前看了几个视频,老师是这样导入的:
from database_setup import Base, Restaurant, MenuItem
因此,如果您已经观看了视频,您应该在 database_setup.py
class MenuItem
我建议您重新观看 "Putting it All Together",这样您就可以正确地使用模块和导入。