用于更新json文件的脚本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用于更新json文件的脚本相关的知识,希望对你有一定的参考价值。

Python脚本需要两个输入,然后删除一些项目

{
    "a": [
      "one",
      "two",
      "three"
    ],
    "b": [
      "four",
      "five",
      "six"
    ],
    "c": [
      "seven",
      "eight",
      "nine",
      "ten"
    ]
}

Python脚本:

import json
import sys

alphaname=sys.argv[1]
numname=sys.argv[2]

with open('test.json', 'r+') as f:
  data = json.load(f)
  del data[alphaname][numname]

[当我运行脚本python purest.py a three时,应该从three中删除a并更新json文件。

这里是错误:

del data[alphaname][numname]
TypeError: list indices must be integers, not str
答案

numname是一个字符串,当您使用python purest.py a three运行程序时,它作为参数被接收。

data[alphaname]给您一个数组,它是键a的值

=>您对data[alphaname]的输出将是[“一个”,“两个”,“三个”]]

您可以添加以下代码(一种非常基本的解决方法:):

import json
temp_list = []
for i in data[alphaname]:
   if data[alphaname][i] != numname:
       temp_list.append(data[alphaname][i])
data.update({alphaname:temp_list})

with open('test.json', 'w') as f:
    json.dump(data, f)

请告诉我这是否适合您。祝一切顺利。

以上是关于用于更新json文件的脚本的主要内容,如果未能解决你的问题,请参考以下文章