Python 为什么我会收到以下错误消息?

Python 为什么我会收到以下错误消息?,python,function,dictionary,return-value,Python,Function,Dictionary,Return Value,定义的函数将返回修改过的字典。 参数“teams”是一个字典,参数“driver”是一个字符串。“团队”的关键是驱动力,其价值是其他团队成员。因此,我尝试将“驱动程序”与输入参数和其他团队成员交换: def switch(teams, driver): temp = teams[driver] switch[temp] = driver del switch[driver] return teams print(swit

定义的函数将返回修改过的字典。 参数“teams”是一个字典,参数“driver”是一个字符串。“团队”的关键是驱动力,其价值是其他团队成员。因此,我尝试将“驱动程序”与输入参数和其他团队成员交换:

 def switch(teams, driver):
        temp = teams[driver]
        switch[temp] = driver
        del switch[driver]
        return teams

    print(switch({'Jack':'Jill', 'Romeo':'Juliet', 'Drake':'Josh'}, 'Drake'))
为什么我会收到以下错误消息?我在代码中哪里出错了

开关[温度]=驱动器
TypeError:“函数”对象不支持项分配

以与您的方法保持一致:

  • 从字典中选择一个值,它将成为新的键
  • 将新条目添加到词典中
  • 删除旧条目

  • 在这行中,你想做什么
    switch[temp]=driver
    switch
    是一个函数,所以
    switch[temp]
    没有意义。非常感谢!!我没有意识到我是在函数中添加新条目,而不是在字典中添加新条目,这是毫无意义的。一个非常愚蠢的错误。再次感谢!很乐意帮忙!如果你对答案感到满意,请接受它-这使论坛专注于未回答的问题。
        def switch(teams, driver):
           temp = teams[driver]
           teams[temp] = driver
           del teams[driver]
           return teams