爲了讓我的項目有一個清晰的結構,我嘗試將不同的部分保存在不同的file.py中。我使用一個main.py一起啓動腳本(線程化)。現在我想將一個datetime.datetime變量放入另一個腳本中。2個python文件和1個main.py傳遞這些文件之間的變量
例如:
#main.py
import file1
import file2
if __name__=='__main__':
p1 = Process(target = file1.a)
p1.start()
time.sleep(1)
p2 = Process(target = file2.b)
p2.start()
#file1.py
def a():
global t1
t1 = datetime.datetime(example date)
#file2.py
def b():
print(t1)
我得到的錯誤是:
Traceback (most recent call last):
File "location\main.py", line 7, in <module>
import test2
File "location\file2", line 3, in <module>
b()
File "location\file2", line 2, in b
print(t1)
NameError: name 't1' is not defined
我在做什麼錯?在文件2中導入file1似乎也不起作用。我應該把所有的腳本放在一個文件中嗎?
如果我錯過了任何信息,只是問:)謝謝!
看看https://docs.python.org/2/library/multiprocessing.html#sharing-state-between-processes – ozgur