Python json编辑.json fi

2024-10-02 12:25:00 发布

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

我正在尝试向.json文件添加一些内容。你知道吗

这就是拯救

        "106569102398611456" : {
        "currentlocation" : "Pallet Town",
        "name" : "Anthony",
        "party" : [
            {
                "hp" : "5",
                "level" : "1",
                "pokemonname" : "bulbasaur"
            }
        ],
        "pokedollars" : 0
    }
}

我要做的是发出一个命令,在“party”中添加其他内容。这是我想要的一个例子。你知道吗

    "106569102398611456" : {
        "currentlocation" : "Pallet Town",
        "name" : "Anthony",
        "party" : [
            {
                "hp" : "5",
                "level" : "1",
                "pokemonname" : "bulbasaur"
            },
            {
                "hp" : "3",
                "level" : "1",
                "pokemonname" : "squirtle"
            }

        ],
        "pokedollars" : 0
    }
}

编辑:

这是我尝试过的,但我不知道

def addPokemon(pokemon):
    pokemonName = convert(pokemon)
    for pokemon in players['party']:
        pokemon.append(pokemonName)

convert(pokemon)基本上获取我输入的pokemon,change给它一个级别和运行状况,以添加到.json文件中


Tags: 文件namejson内容partylevelanthonyhp
1条回答
网友
1楼 · 发布于 2024-10-02 12:25:00

要更新JSON文件,请将对象写入临时文件,然后用临时文件替换目标文件。示例:

import json
import os
import shutil
import tempfile

def rewriteJsonFile(sourceObj, targetFilePath, **kwargs):
  temp = tempfile.mkstemp()
  tempHandle = os.fdopen(temp[0], 'w')
  tempFilePath = temp[1]
  json.dump(sourceObj, tempHandle, **kwargs)
  tempHandle.close()
  shutil.move(tempFilePath, targetFilePath)

这假设更新是连续发生的。如果更新可能并行进行,则需要某种锁定,以确保一次只进行一个更新。尽管在这一点上,最好使用^{}这样的数据库并以JSON格式返回查询。你知道吗

相关问题 更多 >

    热门问题