我有一个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")
答案 0 :(得分:1)
在script1.py
开头添加
import pickle as p
在创建字典后添加
with open('dict.p', 'wb') ad f:
p.dump(out_dict, f)
然后在script2.py
中再次导入泡菜,但这一次是从文件中加载
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
OR
您根本无法将字典保存到文件中,而只能像类var这样从script1.py
访问它,但是您将不得不导入第一个脚本。
script2.py
示例:
import script1
your_dict = script1.out_dict # your dict var from the first script
print (out_dict)
答案 1 :(得分:0)
您需要声明2个文件。第一个将包含您要调用的函数。像这样:
func.py
def myFunc():
return 2
在脚本中,您需要调用该函数:
main_script.py
import func
val = func.myFunc()
print(val)
答案 2 :(得分:0)
两种方法:
答案 3 :(得分:0)
更简单的方法是将一个文件导入另一个文件并使用该字典:
func.py
def function():
out_file=dict()
# Your Code
return out_file
main.py
import func
val = func.function()