def get_top_k(frequency, k):
temp = frequency
key = ""
tvalues = []
values = []
kk = int(k)
i = 0
for i in temp.keys():
key = i
num = [int(frequency[key])]
tvalues += num
tvalues = bubble_sort(tvalues)
i = 0
for i in kk:
num = [int(tvalues[i])]
values += num
print(values)
i = 0
result = {}
for i in kk:
result += {(str(temp[values[i]])):(int(values[i]))}
return result
3
A
回答
1
因为kk = int(k)
kk
只有一个单一的数字,而不是数字
数组什么是你想怎么办,让我们帮你修复它?
2
您有for i in kk
和kk
只是一个整数。你不能遍历一个整数,你只能遍历一个序列/可迭代的。
如果要从0到(kk-1)
进行迭代,则可能需要for i in range(kk)
。
6
也许你的意思是
for i in range(kk):
+1
进一步解释:如果您确实需要遍历一系列数字,内置函数range()就派上用场了。它生成包含算术运算的列表,例如: >>> range(10)' '[0,1,2,3,4,5,6,7,8,9]' (source:http: /docs.python.org/release/1.5.1p1/tut/range.html)下面是3.3的“范围”链接 - http://docs.python.org/3.3/library/stdtypes.html?highlight=range #范围 – harperville 2013-10-31 12:01:38
3
一点题外话,但:
for i in temp.keys():
key = i
num = [int(frequency[key])]
tvalues += num
should just be:
tvalues = temp.values()
例如:
>>> D = {'a':1, 'b':2, 'c':3, 'd':4}
>>> D.keys()
['a', 'c', 'b', 'd']
>>> D.values()
[1, 3, 2, 4]
>>> D.items()
[('a', 1), ('c', 3), ('b', 2), ('d', 4)]
>>>
,它看起来像你的代码可以改成这样:
>>> D = {'a':1, 'b':2, 'c':3, 'd':4}
>>> def get_top_k(D, k):
... return sorted(D.items(), reverse=True, key=lambda x: x[1])[:k]
...
>>> get_top_k(D, 2)
[('d', 4), ('c', 3)]
>>>
相关问题
- 1. 为什么我得到'int'对象不是可迭代错误?
- 2. 为什么我得到这个错误“TypeError:'方法'对象不可迭代”?
- 3. TypeError:'NoneType'对象不可迭代。为什么我会得到这个错误?
- 4. 为什么我得到一个对象不是可迭代错误?
- 5. 为什么我得到这个对象引用和响应不可用错误?
- 6. 为什么“NoneType”不可迭代“错误,当我不迭代?
- 7. 为什么得到TypeError:'function'对象不可迭代?
- 8. 为什么我得到这个错误?
- 9. 为什么我得到这个错误
- 10. 为什么我得到这个错误?
- 11. 为什么我得到这个错误?
- 12. 为什么我得到这个错误?
- 13. 为什么我得到这个错误?
- 14. 为什么我得到这个错误?
- 15. 为什么我得到这个错误?
- 16. 为什么我得到这个错误?
- 17. 为什么我得到这个错误?
- 18. 为什么我得到这个错误
- 19. 为什么我得到这个错误?
- 20. 为什么我得到这个错误?
- 21. 为什么我得到这个错误
- 22. TypeError:int类型的对象没有len()需要错误帮助
- 23. 为什么我不能迭代这个对象?
- 24. 为什么'model'对象不可迭代?
- 25. 需要帮助找出为什么我得到这个分段错误
- 26. 为什么我得到这个错误在我的Haskell代码
- 27. 为什么我得到这个api请求500错误
- 28. 为什么我得到这个错误,这是不寻常的
- 29. 为什么我得到这个错误试图获得非对象的属性?
- 30. 为什么我的这个请求得到“406不可接受”?
'xrange'也不会伤害。 ;) – aviraldg 2011-04-28 17:55:25
@Aviral如果它不是Python 3.x :) – 2011-04-28 17:59:08