python 3.6 json.dumps ValueError с использованием allow_nan = True

1

В настоящее время я работаю над переходом с python 2.7 на python 3.6

Код Python 2.7, который работает

json.dump(data, ignore_nan=True)

Код Python 3.6

json.dumps(charts, allow_nan=False)

Сообщение об ошибке:

{ValueError}Out of range float values are not JSON complaint

Как мне сбрасывать информацию, игнорируя значения nan?

Пример:

 "series": [
                {
                    "data": [
                        {
                            "value": 60.6,
                            "x": 1538431200000.0
                        },
                        {
                            "value": 80.6,
                            "x": 1538434800000.0
                        },
Теги:

2 ответа

0

После многих попыток, которые работают как:

import simplejson
simplejson.dumps(data, ignore_nan=True)
0

allow_nan=True должен делать трюк. У меня не было никаких проблем с опцией allow_nan.

>>> a = [{"k": 1, "v": float('nan')}, {"k": 2, "v": float('inf')}]
>>> a
[{'k': 1, 'v': nan}, {'k': 2, 'v': inf}]
>>> import json
>>> json.dumps(a)
'[{"k": 1, "v": NaN}, {"k": 2, "v": Infinity}]'
>>> import sys
>>> print (sys.version)
3.6.6 (default, Jul 19 2018, 14:25:17) 
[GCC 8.1.1 20180712 (Red Hat 8.1.1-5)]

Ещё вопросы

Сообщество Overcoder
Наверх
Меню