【问题标题】:Split a long one line of json file into multilines将长长的一行json文件拆分成多行
【发布时间】:2019-04-25 19:22:49
【问题描述】:

我试图弄清楚如何在每个逗号之后将单行 JSON 文件拆分为多行。

我已经尝试使用 split 方法,但它仍然不是我正在寻找的输出。这就是我到目前为止所走的路。

with open('api.txt', 'w+') as f : 
        api = res.read().decode('utf-8')
        f.write(api)

        new_api = str(api).split(",")
        with open('new_api.txt', 'w+') as n : 
            n.write(new_api)

我想要这样的结果:

line1"语言":null

line2"has_issues":true 第 3 行“has_projects”:真 第 4 行“has_downloads”:真 第 5 行“has_wiki”:真 第6行“has_pages”:假

【问题讨论】:

  • 添加您的one line JSON的样本
  • 请给我们一个输入的例子和你想要的相应输出——不仅仅是输出:)

标签: python


【解决方案1】:

您可以尝试将 .join 添加到您的方法中。 声明 new_api 之后。

像这样:

with open('api.txt', 'w+') as f : 
    api = res.read().decode('utf-8')
    f.write(api)

    new_api = str(api).split(",")

    new_api = "\n".join(["".join(new_api[i:i+1]) for i in range(0,len(new_api))])

这会将您的逗号分开,甚至解码您的行,从逗号的开头到结尾。让我知道这是否解决了您的问题。

【讨论】:

  • 我已经看了好几个小时了!你真的帮了我!我还是 python 新手,所以我不知道你可以同时添加另一个 .join,甚至是一个 for 循环!谢谢
  • 很高兴我能帮上忙 :-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多