Skip to main content
 首页 » 编程设计

python之Python 中的堆法则

2025年05月04日17artech

我正在尝试绘制给定文本的堆法则(它显示词汇量的增长与文本长度的函数关系)。也就是说,对于每个标记,我需要文本的长度和最大给定标记的词汇量

我已经标记了我的文本,但我卡住了,因为我不知道如何遍历文本中的所有单词。

tokens=nltk.wordpunct_tokenize(text) 
it=len(tokens) 
i=1 
for word in tokens: 
    print len(tokens), len(set(tokens)) 
    i=i+1 
    if i>it: 
        break 

我基本上需要在每次迭代中让文本增长 1 个标记。 感谢您的帮助!

请您参考如下方法:

您可以使用enumerate 来避免递增计数器:

uniq = set() 
 
for i, token in enumerate(tokens): 
    uniq.add(token) 
    print "%d => %d" % (i, len(uniq))