diff --git a/toml/encoder.py b/toml/encoder.py index bf17a72..00da6dd 100644 --- a/toml/encoder.py +++ b/toml/encoder.py @@ -173,7 +173,7 @@ def dump_inline_table(self, section): def dump_value(self, v): # Lookup function corresponding to v's type - dump_fn = self.dump_funcs.get(type(v)) + dump_fn = next(f for t, f in self.dump_funcs.items() if isinstance(v, t), None) if dump_fn is None and hasattr(v, '__iter__'): dump_fn = self.dump_funcs[list] # Evaluate function (if it exists) else return v