2021年2月26日 星期五

[Python]全域變數的宣告與使用

 最近開發python程式

為了在兩個pyhton檔間控制thread因此用了flag

但發現從另一個檔案改變了flag為True後  原本檔案內的flag 印出還是False


找了網路上的這個方案,試試有效便分享之 : https://sam66.medium.com/python-%E6%80%8E%E9%BA%BC%E5%9C%A8%E5%85%A9%E5%80%8B%E6%AA%94%E6%A1%88%E4%B9%8B%E9%96%93%E5%88%86%E4%BA%AB%E5%85%A8%E5%9F%9F%E8%AE%8A%E6%95%B8-8fced72f3550



globals.py內宣告

def initialize():

 global at_module_ready

 at_module_ready = False


main.py在__name__宣告

if __name__ == '__main__':

    globals.initialize()

    print(globals.at_module_ready)  # print the initial value

    main()


接著在需要使用到global變數的地方import globals

如此就可以改變與正確共享全域變數的值




沒有留言:

張貼留言