def __setitem__(self, key, value): if isinstance(self.get(key), bool): dict.__setitem__(self, key, utils.config_true_value(value)) elif isinstance(self.get(key), int): try: dict.__setitem__(self, key, int(value)) except ValueError: if value: # No need to raise the error if value is '' raise else: dict.__setitem__(self, key, value)