Изменение глобальных переменных и чтение их - PullRequest
0 голосов
/ 14 января 2020

У меня есть файл свойств props.properties

[collect_data]
collect = True

И 2 файла test2.py

import test1 as c


class Test:
    def __init__(self):
        pass

    def printer(self):
        print 'in test2 value is' c.COLLECT_DATA

И test1.py файл с основной функцией

    from ConfigParser import ConfigParser    
    import test2 as t

    DEFAULT_PROPS = '..//etc//props.properties'

    COLLECT_DATA = False

    class Initializer:
        def __init__(self):
            pass

        def init_const(self, properties=DEFAULT_PROPS):
            cfg = ConfigParser()
            print 'Start'
            cfg.read(properties)
            global COLLECT_DATA = False
            COLLECT_DATA = eval(cfg.get('collect_data', 'collect'))
            print 'Now it is', COLLECT_DATA 

    if __name__ == '__main__':
        i = Initializer()
        i.init_const()

        test = t.Test()
        test.printer()
        print COLLECT_DATA

Я хочу прочитать свойства из файла props, скопировать его и прочитать их в другом файле, но на самом деле у меня есть такие журналы:

Start
Now it True
in test2 value is False
True

Как это решить?

...