x = 'AB ATEA 00040150'
def float_converter(value):
return float('{0}.{1}'.format(value[:1], value[1:]))
alist = [('Code',0,2,None),
('Name',3,7,None),
('Value1',8,13,float_converter),
('Value2',13,16,float_converter)]
adict = {}
for a, b, c, converter in alist:
v = x[b:c]
if converter:
v = converter(v)
adict[a] = v
print adict
eCA9ICdBQiBBVEVBIDAwMDQwMTUwJwoKZGVmIGZsb2F0X2NvbnZlcnRlcih2YWx1ZSk6CiAgICByZXR1cm4gZmxvYXQoJ3swfS57MX0nLmZvcm1hdCh2YWx1ZVs6MV0sIHZhbHVlWzE6XSkpCgphbGlzdCA9IFsoJ0NvZGUnLDAsMixOb25lKSwKICAgICAgICAgKCdOYW1lJywzLDcsTm9uZSksCiAgICAgICAgICgnVmFsdWUxJyw4LDEzLGZsb2F0X2NvbnZlcnRlciksCiAgICAgICAgICgnVmFsdWUyJywxMywxNixmbG9hdF9jb252ZXJ0ZXIpXQoKYWRpY3QgPSB7fQpmb3IgYSwgYiwgYywgY29udmVydGVyIGluIGFsaXN0OgogICAgICB2ID0geFtiOmNdCiAgICAgIGlmIGNvbnZlcnRlcjoKICAgICAgICAgIHYgPSBjb252ZXJ0ZXIodikKICAgICAgYWRpY3RbYV0gPSB2CiAgICAgIApwcmludCBhZGljdAo=