UnboundLocalError:局部变量...在赋值之前引用[重复]

2023-12-06

我得到一个UnboundLocalError因为我在 if 语句中使用了未执行的模板值。处理这种情况的标准方法是什么?

class Test(webapp.RequestHandler):
    def get(self):      
        user = users.get_current_user()
        if user:
            greeting = ('Hello, ' + user.nickname())
        else:
            self.redirect(users.create_login_url(self.request.uri))
...

        template_values = {"greeting": greeting,
                       }

Error:

UnboundLocalError: local variable 'greeting' referenced before assignment

只需切换:

class Test(webapp.RequestHandler):
    def err_user_not_found(self):
        self.redirect(users.create_login_url(self.request.uri))
    def get(self):      
        user = users.get_current_user()
        # error path
        if not user:
            self.err_user_not_found()
            return

        # happy path
        greeting = ('Hello, ' + user.nickname())
        ...
        template_values = {"greeting": greeting,}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UnboundLocalError:局部变量...在赋值之前引用[重复] 的相关文章

随机推荐

  • 如何从 Powershell 运行此 Beyond Compare 脚本?

    目前我可以使用 Beyond Compare 脚本将结果输出到文件 你们都能够帮助我弄清楚如何通过 Powershell 检查结果文本文件中的差异 不过 我还有一个问题 为了将结果保存到文本文件中 Beyond Compare 让您使用基本
  • 如何在 Selenium (selenium-webdriver) JavaScript 中使用 Chrome 配置文件

    由于似乎没有办法使用现有的 Chrome 窗口 我如何在该窗口中使用用户的 Google 帐户 以及所有设置和密码 Selenium opens Selenium似乎为自己打开了窗口 但没有谷歌帐户 这是我的程序的重要组成部分 我的程序对时
  • 使用asyncio在django中执行周期性任务

    你认为可以使用asyncio在django中每n秒运行一个任务 这样主进程就不会被阻塞吗 例如 每 5 分钟在控制台中打印一次 例如 import asyncio from random import randint async def d
  • Altair:更改滑块的位置

    是否可以更改滑块选择绑定的位置 在 Altair 文档或 vega lite 文档中找不到某些内容 https vega github io vega lite docs bind html 我想将年份滑块向上移动 靠近主散点图 https
  • 如何在Databricks上重新安装相同版本的wheel而不重新启动集群

    我正在开发一些Python代码 这些代码将用作各种的入口点轮式工作流程在数据块上 鉴于它正在开发中 在我更改代码来测试它之后 我需要构建一个轮子并部署在 Databricks 集群上来运行它 我使用了一些仅在 Databricks 运行时中
  • Bigquery - 向每个 ID 添加完整日期范围

    我如何将 GENERATE DATE ARRAY start date end date INTERVAL INT64 expr date part 应用于数据集中的每个记录 我了解如何应用它来获取从开始到结束的单个日期范围 但不知道如何将
  • 使用 setState 仅更新多维数组的一个元素

    我只想更改多维数组的一个元素 nodes is a 2 dimensional array of 30 rows and 30 columns this state nodes updatedNodes is a deep copy of
  • 预处理器指令在 C 中如何工作?

    我正在阅读一本书 让我们 C by Yashwant Kanetkar 其中写道 当我们编译程序时 在源代码传递给编译器之前 C 预处理器会检查源代码是否有宏定义 当它看到 define指令时 它会遍历整个程序来搜索宏模板 无论它找到什么
  • 从节点模块导入 axios 时出现错误

    我已经通过 npm 安装了 axios 并尝试将 axios 导入到我的前端脚本文件中 我面临的错误是 未捕获的语法错误 无法在模块外部使用 import 语句 这是我的 app js 文件 import axios from axios
  • 将这行文本读入结构的最简单方法?

    我有一个文本文件 其中的数据格式如下 Lee AUS 2 103 2 62 TRUE Check AUS 4 48 0 23 FALSE Mills AUS 8 236 0 69 FALSE 我需要将每一行放入一个结构中 但是我想避免使用固
  • 启用 CORS 的正确位置在哪里?

    我在用着Spyne 这个例子 你好世界 代码 制作一个生成一些内容的网络服务json数据 然后我尝试在客户端浏览器中的 JavaScript 代码中使用这些数据 当我去到地址时http localhost 8000 say hello na
  • NVD3.js 为图表中的特定条形着色

    有没有办法给特定的条形着色 如果条形小于线 则将其涂成红色 Code https github com tvinci webs blob gh pages lineplusbar html 例子 http tvinci github io
  • 尝试传递 constexpr lambda 并使用它来显式指定返回类型

    我想使用一个函数并传递一个constexpr lambda 但是 只有当我通过以下方式推导类型时 它才会成功编译auto 通过显式给出类型 gt std array
  • XAML 中的 XPath 绑定错误

    我在 XAML 中有一个绑定 Binding XPath List Item Status OK Visual Studio 告诉我它需要 和 但是当我查看其他地方的文档时 这条线看起来不错 它不会编译并给我一个错误 指出成员 List I
  • Oracle SQL 一条语句对多个属性和表进行权限授权

    是否可以在一条语句中对不同的表或属性授予不同的权限 例如我想结合 GRANT SELECT ON tbl TO user and GRANT UPDATE OF attr ON tbl TO user 此外 我可以结合授予不同关系的特权 G
  • 当 QThread 尝试通过 PyGILState_Ensure() 获取 Python GIL 时发生死锁

    我有一个 C Qt 应用程序 我想在其中嵌入 Python 解释器 我想从 QThread 调用 Python 但在调用 PyGILState Ensure 以尝试获取全局解释器锁 GIL 的行处遇到死锁 我将在下面提供一个最小且直接的示例
  • JOptionPane 在不同行上具有多个输入

    我想创建一个JOptionPane允许用户选择要连接的 IP 地址和端口 它的结构应该是这样的 IP 地址 此处的文本字段 端口 此处的文本字段 取消 确定 标签应左对齐 文本字段也应左对齐 我无法在这里真正对故事板进行建模 但基本上文本字
  • Android RecyclerView 复选框会自行检查

    我有一个 RecyclerView 它有一个复选框和文本视图 数字 10 20 30 40 直到 500 应显示在文本视图中 选中的复选框应在文本视图中添加与该复选框对应的数字 例如如果用户仅检查值 10 则 textView 将显示 10
  • Python 2.6 中导入 win32api 错误

    在Windows操作系统 64位 下运行python26时 我有这样的错误 import win32api error in Python 2 6 pywintypes26 dll or pythoncom26 dll missing Im
  • UnboundLocalError:局部变量...在赋值之前引用[重复]

    这个问题在这里已经有答案了 我得到一个UnboundLocalError因为我在 if 语句中使用了未执行的模板值 处理这种情况的标准方法是什么 class Test webapp RequestHandler def get self u