Fix #63: Strip leading 0 in exponent part

This commit is contained in:
Uiri
2017-04-12 13:18:15 -04:00
parent 9083bfae75
commit 83b4f8a348

View File

@@ -786,7 +786,7 @@ def _dump_value(v):
unicode: lambda: _dump_str(v),
list: lambda: _dump_list(v),
bool: lambda: str(v).lower(),
float: lambda: str(v),
float: lambda: _dump_float(v),
datetime.datetime: lambda: v.isoformat()[:19]+'Z',
}
# Lookup function corresponding to v's type
@@ -794,9 +794,6 @@ def _dump_value(v):
# Evaluate function (if it exists) else return v
return dump_fn() if dump_fn is not None else v
def _dump_str(v):
v = "%r" % v
if v[0] == 'u':
@@ -809,7 +806,6 @@ def _dump_str(v):
v = v.replace("\\x", "\\u00")
return str('"'+v+'"')
def _dump_list(v):
t = []
retval = "["
@@ -826,3 +822,6 @@ def _dump_list(v):
t = s
retval += "]"
return retval
def _dump_float(v):
return "{0:.16g}".format(v).replace("e+0", "e+").replace("e-0", "e-")