我正在按照课堂作业的说明进行操作,并且应该在文本文件中查找最常用的 200 个单词。
这是代码的最后一部分:
fdist1 = FreqDist(NSmyText)
vocab=fdist1.keys()
vocab[:200]
但是当我在 vocab 200 行后按 Enter 时,它返回:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'dict_keys' object is not subscriptable
关于如何解决此问题以便正确返回答案有什么建议吗?
看起来你正在使用 Python 3。在 Python 3 中dict.keys()
返回一个可迭代但不可索引的对象。最简单(但不是那么有效)的解决方案是:
vocab = list(fdist1.keys())[:200]
在某些情况下,需要继续使用迭代器对象而不是列表。这可以通过以下方式完成itertools.islice()
:
import itertools
vocab_iterator = itertools.islice(fdist1.keys(), 200)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)