Python错误名称错误:未定义名称“...”

时间:2015-12-07 04:10:45

标签: python python-2.7 sqlalchemy nameerror python-3.5

我是编程新手,尤其是Python。如果它有助于我尝试位于此处的Udacity免费课程:

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'未定义

如果我遗失了什么,请告诉我。先谢谢你。

2 个答案:

答案 0 :(得分:0)

这意味着你没有一个名为MenuItems的对象(你拼写的是不同的吗?)。在首先使用它之前,您需要定义一些东西。 你应该有一个类似于:

的陈述
MenuItems = {... code}

答案 1 :(得分:0)

  

NameError:名称'MenuItems'未定义

当您收到该错误时,您可以在定义之前或导入之前使用某个名称。为避免这种情况,您需要from x import MenuItemMenuItem = ...class MenuItem

之类的定义。

我在那之前观看了一些视频,导师会导入这样的视频:

from database_setup import Base, Restaurant, MenuItem

因此,如果您关注了视频,则应class MenuItem

中定义database_setup.py

我建议你重新发送"Putting it All Together",这样你就可以获得模块和导入。