Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python append正在追加错误的数据_Python_Append - Fatal编程技术网

Python append正在追加错误的数据

Python append正在追加错误的数据,python,append,Python,Append,我有一个Python程序,可以获取和检索nba篮球比赛的信息。在我的示例中,有6个游戏正在玩,我获取了所有游戏的信息,并将其放入变量gameInfo中。gameInfo是正确的,当我打印出来时,结果很好,每个游戏都是正确的。但是当我添加finalPush[games].appendgameInfo时,它会添加最近的gameInfo I次,因此finalPush[games]的最终输出是最后添加6次的游戏。我想把所有6个游戏的信息输入finalPush[游戏]。任何帮助都将不胜感激,我不知道我做错

我有一个Python程序,可以获取和检索nba篮球比赛的信息。在我的示例中,有6个游戏正在玩,我获取了所有游戏的信息,并将其放入变量gameInfo中。gameInfo是正确的,当我打印出来时,结果很好,每个游戏都是正确的。但是当我添加finalPush[games].appendgameInfo时,它会添加最近的gameInfo I次,因此finalPush[games]的最终输出是最后添加6次的游戏。我想把所有6个游戏的信息输入finalPush[游戏]。任何帮助都将不胜感激,我不知道我做错了什么

def add_game_info_to_json():
finalPush = {"games": []}
gameInfo = {
    "teamHome": "",
    "teamAway": "",
    "recordHome": "",
    "recordAway": "",
    "colorHome": "",
    "colorAway": "",
    "line": "",
    "overunder": "",
    "homeTextColor": "",
    "awayTextColor": "",
    "homeIndex": "",
    "awayIndex": "",
    "time": ""
}

with open('teamMaster.json') as f:
    data = json.load(f)

i = 0
z = 0

while i < (len(teams_list)/2):
    gameInfo.update(time = game_status_list[i])
    gameInfo.update(teamAway = teams_list[i+z])
    gameInfo.update(recordAway = records_list[i + z])
    gameInfo.update(line = betting_list[i + z])
    for team in data:
        if team == gameInfo["teamAway"]:
            gameInfo.update(colorAway = data[team]["color"])
            gameInfo.update(awayTextColor = data[team]["textColor"])
            gameInfo.update(awayIndex = data[team]["index"])

    z += 1
    gameInfo.update(teamHome = teams_list[i+z])
    gameInfo.update(recordHome = records_list[i + z])
    gameInfo.update(overunder = betting_list[i + z])
    for team in data:
        if team == gameInfo["teamHome"]:
            gameInfo.update(colorHome = data[team]["color"])
            gameInfo.update(homeTextColor = data[team]["textColor"])
            gameInfo.update(homeIndex = data[team]["index"])
    print(gameInfo)
    i += 1
    finalPush["games"].append(gameInfo)
    print(finalPush)

将同一个dict追加6次,然后继续更新

您必须附上您的dict副本:

finalPush["games"].append(gameInfo.copy())

哦,我的天啊,非常感谢你。那正是我想要弄明白的原因