LINUX.ORG.RU

История изменений

Исправление Deleted, (текущая версия) :

Поздно, он уже ушел:

class Bootstrap:
    def __init__(self):
        #...
        parser = argparse.ArgumentParser()
        parser.add_argument('-t', '--timeout', dest='timeout', action='store',
                            type=int,
                            help='timeout in sec between node registration updates')
        parser.add_argument('-v', '--verbose', dest='log_level', action='count',
                            help='logging level, -v is INFO, -vv is DEBUG')
        #...
        args = parser.parse_args()

        config = configparser.ConfigParser()
        #...

        cm = config['main']

        def get(name, converter=None):
            res = getattr(args, name, None)
            if res is None:
                res = cm.get(name)
            if callable(converter):
                res = converter(res)
            return res

        self.log_level = get('log_level', int)
        self.timeout = get('timeout', int)
        #...

т.к. мне лень колдунствовать то все забито, но вообще заметно что имя параметра, тип и еще кой какие флаги - дублируются, это не есть хорошо, но в данном случае пофиг

Исходная версия Deleted, :

Поздно, он уже ушел:

class Bootstrap:
    def __init__(self):
        #...
        parser = argparse.ArgumentParser()
        parser.add_argument('-t', '--timeout', dest='timeout', action='store',
                            type=int,
                            help='timeout in sec between node registration updates')
        parser.add_argument('-v', '--verbose', dest='log_level', action='count',
                            help='logging level, -v is INFO, -vv is DEBUG')
        #...
        args = parser.parse_args()

        config = configparser.ConfigParser()
        #...

        cm = config['main']

        def get(name, converter=None):
            res = getattr(args, name, None)
            if res is None:
                res = cm.get(name)
            if callable(converter):
                res = converter(res)
            return res

        self.log_level = get('log_level', int)
        self.timeout = get('timeout', int)
        #...


т.к. мне лень колдунствовать то все забито, но вообще заметно что имя параметра, тип и еще кой какие флаги - дублируются, это не есть хорошо, но в данном случае пофиг