Try jsonlight.dumps it'll just work. Le mar. 7 juil. 2020 à 12:53, Adam Funk <a24...@ducksburg.com> a écrit :
> On 2020-07-06, Adam Funk wrote: > > > On 2020-07-06, Chris Angelico wrote: > >> On Mon, Jul 6, 2020 at 10:11 PM Jon Ribbens via Python-list > >><python-list@python.org> wrote: > > >>> While I agree entirely with your point, there is however perhaps room > >>> for a bit more helpfulness from the json module. There is no sensible > >>> reason I can think of that it refuses to serialize sets, for example. > >> > >> Sets don't exist in JSON. I think that's a sensible reason. > > > > I don't agree. Tuples & lists don't exist separately in JSON, but > > both are serializable (to the same thing). Non-string keys aren't > > allowed in JSON, but it silently converts numbers to strings instead > > of barfing. Typically, I've been using sets to deduplicate values as > > I go along, & having to walk through the whole object changing them to > > lists before serialization strikes me as the kind of pointless labor > > that I expect when I'm using Java. ;-) > > Here's another "I'd expect to have to deal with this sort of thing in > Java" example I just ran into: > > > >>> r = requests.head(url, allow_redirects=True) > >>> print(json.dumps(r.headers, indent=2)) > ... > TypeError: Object of type CaseInsensitiveDict is not JSON serializable > >>> print(json.dumps(dict(r.headers), indent=2)) > { > "Content-Type": "text/html; charset=utf-8", > "Server": "openresty", > ... > } > > > -- > I'm after rebellion --- I'll settle for lies. > -- > https://mail.python.org/mailman/listinfo/python-list > -- https://mail.python.org/mailman/listinfo/python-list