История изменений
Исправление E, (текущая версия) :
str.format() с некоторыми костылями.
import yaml
from collections import namedtuple
def to_struct(name, data):
if isinstance(data, dict):
T = namedtuple(name, data.keys())
return T(*[to_struct(k.title(), v) for k, v in data.items()])
elif isinstance(data, list):
return [to_struct('YAMLList', x) for x in data]
return data
...
with open(filename, "r") as f:
data = yaml.load(f)
try:
data = to_struct('CVTemplate', data)
with open(dest_filename, "w") as f:
f.write(template.format(**(data.__dict__)))
except KeyError as e:
print("{0}: missing {1} group".format(filename, e))
return 1
except AttributeError as e:
print("{0}: {1}".format(filename, e))
return 1
Исправление E, :
str.format() с некоторыми костылями.
def to_struct(name, data):
if isinstance(data, dict):
T = namedtuple(name, data.keys())
return T(*[to_struct(k.title(), v) for k, v in data.items()])
elif isinstance(data, list):
return [to_struct('YAMLList', x) for x in data]
return data
...
with open(filename, "r") as f:
data = yaml.load(f)
try:
data = to_struct('CVTemplate', data)
with open(dest_filename, "w") as f:
f.write(template.format(**(data.__dict__)))
except KeyError as e:
print("{0}: missing {1} group".format(filename, e))
return 1
except AttributeError as e:
print("{0}: {1}".format(filename, e))
return 1
Исходная версия E, :
str.format() с некоторыми костылями.