python - 如何在文件之间共享全局变量时修复“ImportError:无法导入名称”
问题描述
我在类 SignIn 上有参数,并想在另一个类上使用它,但编译器说'ImportError:无法从'api.sign_in_page'导入名称'HEADERS_CONTENT_TYPE'
导入全局变量应该怎么做?
我试图在类声明之前将变量声明为全局变量,然后将它们导入第二个类
global HEADERS_CONTENT_TYPE
global TOKEN_PARAM
class SignInPage:
from api.sign_in_page import HEADERS_CONTENT_TYPE, TOKEN_PARAM
class SignalsAddPage:
result = requests.post(url=ProjectConfigReader.SIGNALS_ENDPOINT, json=json_for_create_signal, headers={HEADERS_CONTENT_TYPE, TOKEN_PARAM})
我希望新信号已经创建,但是 ImportError: cannot import name 'HEADERS_CONTENT_TYPE' from 'api.sign_in_page' 错误发生
解决方案
该global
关键字在函数内部用于为全局范围内的变量设置值。模块之间的导入不需要使用 global 关键字。请参阅下面的常见问题解答以帮助您。
https://docs.python.org/3/faq/programming.html#how-do-i-share-global-variables-across-modules
推荐阅读
- c# - 如何在 dotnet c# 中导入新的字体系列?
- php - 如何使用这个 JSON,包括数组
- c++ - 在 C++ 中,为什么在调用“erase()”后“迭代器对象”变得无效?
- deep-learning - Pytorch 中的水平堆叠
- java - 检查两个 Java 日期是否相同 | 安卓
- sql - SQL查询查找客户第一次和第二次购买之间的平均天数?
- c# - 在 EF Core 5 中检测模型和数据库是否不同步
- apache-flink - 如何在 Flink 中为特定的键控状态配置 rockDB StateBackend 参数
- python - Pymoo -Error:值的数量和人口规模不匹配
- javascript - 隐藏页面时使 requestAnimationFrame 工作