AttributeError:“tuple”对象没有python属性

2024-05-19 00:00:43 发布

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

我试着一遍又一遍地运行这段代码,但没能找出问题所在。当你添加一个名字,结果可以很好地显示。当我编辑名字,然后试图显示花名册,我得到一个错误。错误是:

Traceback (most recent call last):
  File "Z:/Grantham University/programming essentials/Week 5 Cody Pillsbury.py", 
line 88, in <module>

DisplayTeamRoster(teamRoster)
  File "Z:/Grantham University/programming essentials/Week 5 Cody Pillsbury.py", 
line 39, in DisplayTeamRoster
   teamRoster[x].displayTeamRoster()
AttributeError: 'tuple' object has no attribute 'displayTeamRoster'

代码如下:

^{pr2}$

Tags: 代码inpy错误line名字fileprogramming
2条回答

editRoster()中的这行代码

teamRoster[oldName] = (playerName, playerPhoneNumber, playerJersyNumber)

正在将Roster()对象teamRoster替换为3-tuple。这会在稍后对该元组调用displayRoster时产生问题。在

您需要就地修改Roster()对象

^{pr2}$

这样你就可以正确地更新所有的值。在

我的问题是editPerson方法中的一个错误。我不得不改变:

def editPlayer(teamRoster):
    oldName = input("Please enter the player\'s name you would like to change:")
    if oldName in teamRoster:
        playerName = input("What is the player\'s new name:")
        playerPhoneNumber = input("What is the player\'s new phone number:")
        playerJersyNumber = input("What is the player\'s new jersey number:")
        teamRoster[oldName] = (playerName, playerPhoneNumber, playerJersyNumber)
    else:
        print(oldName, "was not found in the team roster!")
    return teamRoster

^{pr2}$

我需要做的就是把花名册,这样球员就可以被插入球队名册字典。在

相关问题 更多 >

    热门问题