在 Python 中从另一个文件导入变量

新手上路,请多包涵

我已经声明了一些变量并用 variables.py 中的一些值初始化了它们:

 flag = 0
j = 1

我想在另一个文件中使用这些值 main_file.py

 import variables
if(flag == 0) :
   j = j+1

但是我收到以下错误,

 NameError: name 'flag' is not defined

我怎么解决这个问题?

原文由 user8471763 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 598
2 个回答

除了使用变量外,您所做的一切都是正确的。

在您的 main_file.py 文件中:

 if(variables.flag == 0) :
    variables.j = variables.j + 1

(或者)

使用以下标头:

 from variables import *

(或者)

 from variables import flag, j

将 flag 和 j(或您要从该文件中使用的任何其他变量)的所有引用替换为前缀“variables”。

由于这只是变量的副本,因此如果您在 main_file.py 中修改它们,variables.py 中的值不会受到影响

原文由 DeathJack 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以使用

import variables

然后像这样访问变量:

 variables.flag
variables.j

或者你可以使用:

 from variables import flag, j

然后仅通过他们的名字访问 vaiables。

重要

请注意,在第二种情况下,您将使用变量的 副本,并且在一个模块中修改它们不会影响另一个模块中的变量!

原文由 Mike Scotty 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏