python - 如何将所有全局变量导入函数 - Python
问题描述
我正在尝试将所有全局变量导入多个函数,如果我可以调用这样的函数会很棒:
def importGlobals():
global name, version, edition, fullName, method, printSize, printed, oldPrint, print
像这样
def myFunction():
importGlobals()
print(name) # name is a global variable
importGlobals
除了将内部复制到我需要全部使用它们的每个函数之外,还有什么方法可以做到这一点?上述解决方案不起作用......这个也不起作用:
def importGlobals():
global name, version, edition, fullName, method, printSize, printed, oldPrint, print
def myFunction():
print(name)
importGlobals()
myFunction()
任何帮助将不胜感激。
解决方案
正如我在评论中所说,访问变量的另一种方法是在单独的 py 文件中实现它们,并将它们导入到您要访问它们的文件中,如下所示;
主文件
import global_variables
def myFunction():
print(global_variables.name)
global_variables.name = "David"
print(global_variables.name)
def myOtherFunction():
print(global_variables.name)
global_variables.name = "Aaron"
print(global_variables.name)
myFunction()
myOtherFunction()
global_variables.py
# you can use any type for your variables and still access them in another module
name = "John"
version = {"Version":1.0} # access version by global_variables.version["Version"]
edition = ["Edition1"] # access edition by global_variables.edition[0]
fullName = "John Smith"
value = 5.33
输出:
John
David
David
Aaron
推荐阅读
- haskell - 从hoogle,通过stack,到import
- django - 为什么我无法在 Django 路由器中注册“.as_view()”(使用 djangorestframework-simplejwt)?
- python-3.x - 如何从将启动 shell 的 python 脚本启动 cshell 终端?
- powershell - 如何使用 Powershell 在 Outlook 中创建约会(不是会议)?
- python - 如何在 Python 中解密后关闭 MS Office 文件?
- python - RegEx :检查字符串是否在包含至少 3 个单词的引号之间有任何子字符串(以空格分隔)
- reactjs - 样式化组件 w/o defaultProps w/ typescript
- java - Apache Flink:如何在单元测试中更新源函数?
- regex - Logstash 解析方括号内的数据
- tabular - 制表符 - 强制 setRenderMode 为标准