我在test1.py文件中有以下代码:
def main():
a = 10
b = 20
c = 30
d = 40
return a,b,c,d
我想在test2.py文件中调用这些变量,我想单独使用它们。这是我想要的输出:
Var a = 10
Var b = 20
Var c = 30
Var d = 40
这些变量有不同的用途。我现在所做的是,我打印test1.py文件中的所有变量,但我不能逐一使用这些变量。test2.py文件:
from test1 import *
b = main()
def mainn():
print(b)
mainn()
输出为:
(10, 20, 30, 40)
我想单独使用这些变量,我该怎么做?
您的函数返回一个Tuple。
您可以通过其索引从元组中选择所需的值
from test1 import *
b = main()
def mainn():
print(b[1])
mainn()
或通过for循环分配变量
from test1 import *
b = main()
list_of_vars = ['a','b','c','d']
for i, v in enumerate(list_of_vars):
list_of_vars[i] = b[i]
print(list_of_vars)
或者按照Sujay 的建议对元组进行解包
a, b, *other = main()
或者,如果变量数量有限,那么只需
a, d, c, f = main()
首先将您的main
放入一个py文件中,例如子文件夹(例如module
(中的myvrs.py
,如下所示:
| test.py
|-- module
| __init__.py
| myvars.py
__init__.py
是将子文件夹标记为实际python模块所必需的,这样您就可以从test.py
中import
它。它可以是空的。
您的myvars.py
可能与您上面描述的test1.py
完全相同。
然后你可以做
from module.myvars import main
vars = main()
for v in vars:
print(v)