我希望Python None在json中编码为空字符串如何?以下是默认行为json.dumps.
>>> import json
>>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])
'["foo", {"bar": ["baz", null, 1.0, 2]}]'
Run Code Online (Sandbox Code Playgroud)
我应该覆盖json编码器方法还是有其他方法吗?
谢谢!
编辑
输入数据并不像上面的示例那么简单,在每个请求上都可以将其更改为不同的数据结构.很难编写一个改变数据结构的函数.
在您要编码的对象中,使用空字符串而不是a None.
这是一个未经测试的函数,它遍历一系列嵌套字典以将所有None值更改为''.添加对列表和元组的支持留给读者练习.:)
import copy
def scrub(x):
ret = copy.deepcopy(x)
# Handle dictionaries. Scrub all values
if isinstance(x, dict):
for k,v in ret.items():
ret[k] = scrub(v)
# Handle None
if x == None:
ret = ''
# Finished scrubbing
return ret
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16512 次 |
| 最近记录: |