我有以下方法:Python。如何採取自定義類型的對象從* ARGS
def _loginEventHandler(cmdID, *args):
if cmdID == Login.LOGIN_LOGED:
user = args[0]
print("User",user.userTypeID,"logged in")
該方法被稱爲像這樣從不同的模塊:
user = User(nUserSelected)
_loginEventHandler(Login.LOGIN_LOGED,user)
解釋拋出一個AttributeError:
file "/main.py", line 79, in _loginEventHandler print("User",user.userTypeID,"logged in") AttributeError: 'tuple' object has no attribute 'userTypeID'
問題是什麼是從正確的方式採取參數*參數(特別是如果他們是自定義類型像「用戶」),爲什麼它採取從args中取出元組[0]
您的打印語句有一個元組。也許你想刪除括號。 – Marichyasana