Python3下錯誤AttributeError: ‘dict’ object has no attribute’iteritems‘的分析與解決
引言
目前Python2和Python3存在版本上的不兼容性,這里將列舉dict中的問題之一。下面話不多說,來看看詳細的介紹:
1. Python 2 vs python 3
根據(jù)Python社區(qū)的主流要求,Python 2將在最近的若干年內(nèi)不再提供技術(shù)支持,目前的python 2.7.12已經(jīng)是其維護版本;如無意外,大家請參照使用Python 3.
Python 3與Python 2之間的割裂以及向下不兼容性是其一個非常著名的事件,給整個社區(qū)和相關(guān)應(yīng)用造成了相當?shù)睦_。
2. 問題
Python 2:
>> dict1 = {}
>> dict1['key1'] = 'val1'
>> for k, v in dict1.items():
print(k+ "=>" + v)
Traceback (most recent call last): File "<ipython-input-23-5ccef53f3d75>", line 1, in <module> hist_sorted = sorted(hist.iteritems(), key=lambda d: d[1], reverse=True) AttributeError: 'dict' object has no attribute 'items'
3. 問題的解決
確認其為Python 3下的用法:
在Python 2之下的用法是:
for k, v in dict1.iteritems():
print(k+ "=>" + v)
上述代碼在python3下,可以正確的執(zhí)行運行。
4. Python 2 vs python 3
從Python 2向Python 3的進化需要一個過程,其中的差異可以參照如下文章:http://www.dhdzp.com/article/105518.htm
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
- python錯誤:AttributeError: ''module'' object has no attribute ''setdefaultencoding''問題的解決方法
- 解決python多線程報錯:AttributeError: Can''t pickle local object問題
- Python 中 AttributeError: ‘NoneType‘ object has no attribute ‘X‘ 錯誤問題解決方案
- 解決AttributeError:'NoneTypeobject'?has?no?attribute'Window'的問題(親測有效)
- Python進程崩潰AttributeError異常問題解決
- Pytorch出現(xiàn)錯誤Attribute?Error:module?‘torch‘?has?no?attribute?'_six'解決
相關(guān)文章
Python兩個整數(shù)相除得到浮點數(shù)值的方法
這篇文章主要介紹了Python兩個整數(shù)相除得到浮點數(shù)值的方法,本文直接給出代碼示例,需要的朋友可以參考下2015-03-03
Django JSONField的自動轉(zhuǎn)換思路詳解(django自定義模型字段)
如果想實現(xiàn)JSONField的自動轉(zhuǎn)換,可以使用Django REST framework的JSONField,或者自定義一個字段類并覆蓋from_db_value()和get_prep_value()方法來實現(xiàn)這個功能,這篇文章主要介紹了Django JSONField的自動轉(zhuǎn)換(django自定義模型字段)問題,需要的朋友可以參考下2023-06-06

