当前位置:   article > 正文

Python3出现AttributeError: ‘dict’ object has no attribute错误_attributeerror: 'dict' object has no attribute 'pr

attributeerror: 'dict' object has no attribute 'project
result = sorted(classCount.iteritems(), key=operator.itemgetter(1), reverse=True)

错误显示

AttributeError: 'dict' object has no attribute 'iteritems'
之所以会出现上述错误是因为python3中已经没有这个属性,直接改为items即可:

result = sorted(classCount.items(), key=operator.itemgetter(1), reverse=True)

知识点补充

operator.itemgetter函数

operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号(即需要获取的数据在对象中的序号),下面看例子。

  1. a = [1,2,3
  2. b=operator.itemgetter(1)      //定义函数b,获取对象的第1个域的值
  3. print(b(a)) 
  4. 输出: 
  5. 2
  1. b=operator.itemgetter(1,0)   //定义函数b,获取对象的第1个域和第0个域的值
  2. print(b(a)) 
  3. 输出: 
  4. (2, 1)

要注意,operator.itemgetter函数获取的不是值,而是定义了一个函数,通过该函数作用到对象上才能获取值。

字典items()操作方法:

  1. x = {'title':'python web site','url':'www.iplaypy.com'}
  2. print(x.items())
  3. 输出: 
  4. [(‘url’, ‘www.iplaypy.com’), (‘title’, ‘python web site’)]

从结果中可以看到,items()方法是将字典中的每个项分别做为元组,添加到一个列表中,形成了一个新的列表容器。如果有需要也可以将返回的结果赋值给新变量,这个新的变量就会是一个列表数据类型。

  1. a=x.items()
  2. print(a)
  3. 输出:
  4. [(‘url’, ‘www.iplaypy.com’), (‘title’, ‘python web site’)]
  1. print(type(a))
  2. 输出: 
  3. <\typelist’>

 

转自:https://blog.csdn.net/sinat_35512245/article/details/78639317

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/759122
推荐阅读
相关标签
  

闽ICP备14008679号