Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 索引文件最常用的方法是什么?_Python_Indexing - Fatal编程技术网

Python 索引文件最常用的方法是什么?

Python 索引文件最常用的方法是什么?,python,indexing,Python,Indexing,(注意:我是python语言的新手) 对一个文件进行索引时,我的脚本将返回单词,然后是单词出现的所有行,最适合的方法是什么 下面是我将在脚本中使用的示例文本 那是最好的时代, 那是最糟糕的时期, 那是智慧的时代, 那是愚蠢的年代, 那是信仰的时代, 那是一个怀疑的时代, 这是一个阳光明媚的季节, 那是黑暗的季节, 那是希望的春天, 那是绝望的冬天, 我们拥有一切, 我们面前一无所有, 我们都直接去了天堂, 我们都朝另一条路直走-- 简言之,这一时期与当前时期非常相似,其中一些 它最吵闹的当局坚持

(注意:我是python语言的新手)

对一个文件进行索引时,我的脚本将返回单词,然后是单词出现的所有行,最适合的方法是什么

下面是我将在脚本中使用的示例文本

那是最好的时代, 那是最糟糕的时期, 那是智慧的时代, 那是愚蠢的年代, 那是信仰的时代, 那是一个怀疑的时代, 这是一个阳光明媚的季节, 那是黑暗的季节, 那是希望的春天, 那是绝望的冬天, 我们拥有一切, 我们面前一无所有, 我们都直接去了天堂, 我们都朝另一条路直走-- 简言之,这一时期与当前时期非常相似,其中一些 它最吵闹的当局坚持要接受它,不管是好是坏
邪恶,仅在最高级的比较中。

收集模块是这个问题的朋友。我将使用defaultdict,使用文本中的单词作为键,值将是单词出现的行号

from collections import defaultdict

d = defaultdict(list)

for index, line in enumerate(txt.splitlines()):
    for word in line:
        word_strip = word.strip(',.!?')
        d[word_strip].append(index)

我假设文本包含在一个变量txt中,您也希望去掉各种标点符号。

勘误表:这是愚蠢的年代,应该读这是愚蠢的年代。@devnull真的吗?我找不到这方面的来源(而且它不符合模式)。您尝试过哪些不起作用的方法?让别人帮你做作业,假装你只是想变得“更像蟒蛇”(这甚至没有任何意义)是。。。好吧,也许有人会帮你做作业,但他们不应该。