从json fi中删除多余的空白

2024-05-15 00:10:39 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在json文件中删除键的额外空间? 我的文件看起来像这样。。。在

{
      " bankName " : " State bank of China " ,
" branchDetails " : [
       {
...

预期结果:

^{pr2}$

我可以对json文件使用字符串的“strip”方法吗(最好是带键的值)?在


Tags: 文件of方法字符串json空间bankstate
1条回答
网友
1楼 · 发布于 2024-05-15 00:10:39

将JSON文件解析为Python数据结构,剥离所有字符串,然后再次写出:

from functools import singledispatch

@singledispatch
def json_strip(obj):
    return obj

@json_strip.register(str)
def _(obj):
    return obj.strip()

@json_strip.register(list)
def _(obj):
    return [json_strip(v) for v in obj]

@json_strip.register(dict)
def _(obj):
    return {json_strip(k): json_strip(v) for k, v in obj.items()}

with open(inputfile, 'r') as inf:
    with open(outputfile, 'w') as outf:
        json.dump(json_strip(json.load(inf)), outf)

它使用^{} decorator创建一系列递归函数来处理不同的类型;这需要Python3.4或更高版本。在

您可能需要使用^{}, ^{} and ^{} options调整json.dump()输出。在

快速演示:

^{pr2}$

相关问题 更多 >

    热门问题