天天看點

Python3下機器學習實戰KNN代碼出現AttributeError: ‘dict’ object has no attribute錯誤

出現錯誤的代碼時:

錯誤顯示:

之是以會出現上述錯誤是因為python3中已經沒有這個屬性,直接改為items即可:

知識點補充:

operator.itemgetter函數

operator子產品提供的itemgetter函數用于擷取對象的哪些維的資料,參數為一些序号(即需要擷取的資料在對象中的序号),下面看例子。

輸出:

2

(2, 1)

要注意,operator.itemgetter函數擷取的不是值,而是定義了一個函數,通過該函數作用到對象上才能擷取值。

字典items()操作方法:

[(‘url’, ‘www.iplaypy.com’), (‘title’, ‘python web site’)]

從結果中可以看到,items()方法是将字典中的每個項分别做為元組,添加到一個清單中,形成了一個新的清單容器。如果有需要也可以将傳回的結果指派給新變量,這個新的變量就會是一個清單資料類型。

<\type ‘list’>