1
我的問題是關於在Python中保存變量的值。更具體地說,我有兩種不同的腳本,用兩種不同的方式計算相同的東西。我想要做的是比較兩個腳本返回的變量的值。所以我想知道是否我可以運行第一個腳本,保存其中一個變量的值(比方說矩陣V),然後運行第二個腳本並比較第二個腳本計算的相同變量的值。在Python中保存變量
- 列表項
我的問題是關於在Python中保存變量的值。更具體地說,我有兩種不同的腳本,用兩種不同的方式計算相同的東西。我想要做的是比較兩個腳本返回的變量的值。所以我想知道是否我可以運行第一個腳本,保存其中一個變量的值(比方說矩陣V),然後運行第二個腳本並比較第二個腳本計算的相同變量的值。在Python中保存變量
就像@claymore說的意見,這可以用泡菜來完成。您將您想要的變量存儲到pickle中,然後從比較腳本中獲取pickle對象。
下面是一個例子
script_a.py
# Save a dictionary into a pickle file.
import pickle
def funca():
favorite_color = { "lion": "yellow", "kitty": "red" }
with open("a.pickle","wb") as f:
pickle.dump(favorite_color, f)
funca()
script_b.py
# Save a dictionary into a pickle file.
import pickle
def funcb():
favorite_color = { "lion": "blue", "kitty": "orange" }
with open("b.pickle","wb") as f:
pickle.dump(favorite_color, f)
funcb()
compare.py
# Load the dictionary back from the pickle file.
import pickle
import os
os.system("python script_a.py")
os.system("python script_b.py")
a_fav = pickle.load(open("a.pickle", "rb"))
b_fav = pickle.load(open("b.pickle", "rb"))
print "script 1 had favorite = ", a_fav
print "script 2 had favorite = ", b_fav
太棒了!現在繼續實施它,如果您遇到困難,然後發佈錯誤的代碼。 – MYGz
爲什麼你不能這樣做?你有什麼嘗試? –
我想你可能正在尋找一種結構化的文件格式,例如'yaml'或'json',它支持保存/加載python變量? – fnokke