Спасибо за ваш ответ. К сожалению, мне было интересно что-то, что делает это за один выстрел, а не за один номер. В любом случае, по моему мнению, отрицательные голоса немного несправедливы.

аюсь установить питонаjson библиотека для сохранения в файл словаря, содержащего в качестве элементов другие словари. Есть много чисел с плавающей точкой, и я хотел бы ограничить количество цифр, например, 7.

По другим постам в СОencoder.FLOAT_REPR должны быть использованы, однако, это не работает.

Например, приведенный ниже код, запускаемый в Python3.7.1, печатает все цифры:

import json
json.encoder.FLOAT_REPR = lambda o: format(o, '.7f' )
d = dict()
d['val'] = 5.78686876876089075543
d['name'] = 'kjbkjbkj'
f = open('test.json', 'w')
json.dump(d, f, indent=4)
f.close()

Как я могу решить это?

Это может быть неуместно, но я на OSX.

РЕДАКТИРОВАТЬ

Этот вопрос был помечен как дублированный. Однако впринятый (и до сих пор единственный) ответ на оригинал ясно сказано:

Примечание: это решение не работает на Python 3.6+

Так что это решение не является правильным. Плюс это использование библиотекиsimplejson не библиотекаjson.

Ответы на вопрос(4)

Ваш ответ на вопрос