jsondumps中的default
在使用json.dumps()函数时,可以通过default参数来指定一个函数,该函数用于将非序列化对象转换为可序列化的对象。
当json.dumps()函数遇到无法序列化的对象时,它会调用default函数对该对象进行处理,并将返回的结果进行序列化。
示例代码如下:
import json
def default(obj):
if isinstance(obj, set):
return list(obj)
raise TypeError(f"Object of type {obj.__class__.__name__} is not JSON serializable")
data = {
"name": "John",
"age": 30,
"interests": {"programming", "music", "reading"}
}
json_data = json.dumps(data, default=default)
print(json_data)
输出结果:
{"name": "John", "age": 30, "interests": ["programming", "music", "reading"]}
在上面的示例中,default函数将set对象转换为列表,以便进行序列化。如果遇到其他类型的对象,default函数将抛出TypeError异常
原文地址: http://www.cveoy.top/t/topic/h0Z0 著作权归作者所有。请勿转载和采集!