NameError,名称未定义 - 如何在定义/声明/分配变量之前使用变量?

我目前正在构建一个包含多个图表的仪表板。用户可以选择使用破折号下拉菜单来选择当前月份。图表的初始值始终是当前月份。

现在谈谈我的问题。这些图需要多次计算,这些计算是在 Pandas 中预先完成的。我的代码顺序如下:

  1. 定义数据框

  2. 使用月份变量“T”(硬编码)在 Pandas 中进行计算

  3. 使用plotly生成图表并使用下拉菜单将它们绘制在plotly破折号中

  4. 运行服务器并打印仪表板

我的下拉输出(在步骤 3 中定义)是:

def update_output(value): 
   return 'You have selected month "{}"'.format(value)

我想在步骤 1 之后就使用这个输出 - 从而我可以使计算动态化并使所选月份不被硬编码。本质上,我想将我的硬编码计算行重写为:

df[column].where[df['month_column'] = update_output].sum()

关于如何在计算过程中使用此变量 update_output 而不会出现 NameError (未识别的变量)错误的任何想法?

我读过有关全局、局部、环境变量的内容...虽然似乎找不到在定义变量之前使用变量的方法...

非常感谢你的帮助!


守着星空守着你
浏览 103回答 1
1回答

九州编程

在赋值之前定义变量的方法有很多种。一种方法是使用内置类型函数。python中有很多不同的类型,您可以访问此站点以了解所有类型是什么,但您可以为变量提供类型的空模板。您所要做的就是使用内置类型函数之一。例如,如果您想创建一个空字符串类型对象,您将执行以下操作。basic_string = str()如果您只想创建一个空对象,则可以为该变量分配任何类型(甚至是自定义对象),您将执行以下操作。basic_object = object
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python