[英]How to store the output of a python script in a variable
我有一个python脚本'script1.py',它在执行结束时创建了一个字典'out_dict'。 我从另一个脚本“ script2.py”调用“ script1.py”。
有什么办法只能将最终字典“ out_dict”(注意:“ scirpt1.py”中也有一些打印语句)转换为“ script2.py”中的变量。
script1.py
......
......
some print statement
......
some print statement
......
out_dict = {...}
print(out_dict)
script2.py
import os
val = os.system("python3.6 script1.py")
在script1.py
的开头添加
import pickle as p
在您的字典创建后添加
with open('dict.p', 'wb') ad f:
p.dump(out_dict, f)
然后在script2.py
再次导入pickle,但这一次是从文件加载
import os
import pickle as p
val = os.system("python3.6 script1.py")
with open('dict.p', 'rb') as f:
your_dict = p.load(f) # your dict will loaded
要么
您根本无法将dict保存到文件中,而只能像class var这样从script1.py
访问它,但是您将必须导入第一个脚本。
script2.py
示例:
import script1
your_dict = script1.out_dict # your dict var from the first script
print (out_dict)
您需要声明2个文件。 第一个将包含您要调用的函数。 像这样:
func.py
def myFunc():
return 2
在脚本中,您需要调用该函数:
main_script.py
import func
val = func.myFunc()
print(val)
有两种方法:
更简单的方法是将一个文件导入另一个文件并使用该字典 :
func.py
def function():
out_file=dict()
# Your Code
return out_file
main.py
import func
val = func.function()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.