json.loads()parse_float
时间: 2023-07-23 13:01:15 浏览: 268
json parse
`json.loads()`是一个用于将 JSON 字符串解析为 Python 对象的函数。它接受一个可选的参数`parse_float`,用于指定浮点数的解析方式。
默认情况下,`json.loads()`会将 JSON 中的浮点数解析为 Python 的`float`类型。如果需要自定义浮点数的解析方式,可以通过`parse_float`参数传入一个函数。
这个函数应该接受一个字符串作为参数,并返回一个解析后的浮点数。例如,如果要将浮点数解析为`Decimal`类型,可以使用`parse_float`参数传入`Decimal`函数:
```python
import json
from decimal import Decimal
def parse_decimal(s):
return Decimal(s)
json_str = '{"num": 3.14}'
data = json.loads(json_str, parse_float=parse_decimal)
print(data['num']) # 输出: 3.14 (Decimal 类型)
```
在这个例子中,`parse_decimal`函数将字符串解析为`Decimal`类型的浮点数。通过将该函数传递给`parse_float`参数,`json.loads()`函数会使用该函数来解析浮点数,从而将 JSON 字符串中的浮点数解析为`Decimal`类型的对象。
阅读全文