Using global variables between files?

前端 未结 7 1463
轻奢々
轻奢々 2020-11-22 03:43

I\'m bit confused about how the global variables work. I have a large project, with around 50 files, and I need to define global variables for all those files.

What

相关标签:
7条回答
  • 2020-11-22 04:23

    I just came across this post and thought of posting my solution, just in case of anyone being in the same situation as me, where there are quite some files in the developed program, and you don't have the time to think through the whole import sequence of your modules (if you didn't think of that properly right from the start, such as I did).

    In such cases, in the script where you initiate your global(s), simply code a class which says like:

    class My_Globals:
      def __init__(self):
        self.global1 = "initial_value_1"
        self.global2 = "initial_value_2"
        ...
    

    and then use, instead of the line in the script where you initiated your globals, instead of

    global1 = "initial_value_1"
    

    use

    globals = My_Globals()
    

    I was then able to retrieve / change the values of any of these globals via

    globals.desired_global
    

    in any script, and these changes were automatically also applied to all the other scripts using them. All worked now, by using the exact same import statements which previously failed, due to the problems mentioned in this post / discussion here. I simply thought of global object's properties being changing dynamically without the need of considering / changing any import logic, in comparison to simple importing of global variables, and that definitely was the quickest and easiest (for later access) approach to solve this kind of problem for me.

    0 讨论(0)
提交回复
热议问题