gpt4 book ai didi

python - 处理不确定长度的文本时如何管理列表索引?

转载 作者:行者123 更新时间:2023-12-01 08:25:14 26 4
gpt4 key购买 nike

首先:这可能看起来已经得到了回答,有类似的问题被描述和回答,但(我认为)这有本质上的不同,足以值得在这里提问(抱歉,如果我错了)。这就是为什么我在下面写了一个相当详细的解释,抱歉啰嗦了,我宁愿太详细。

我正在尝试处理大量 .txt 文件,并在每个文件中查找目标单词的每个实例,然后将该单词及其两侧的 10 个单词打印到 .csv 文件中分析(了解单词所使用的上下文)。

我希望每个单词都位于自己的单元格中,以便以后进行分析。因此,在 .csv 处理部分中,我让它记录了关键字的单个索引的降序列表,然后记录了从它开始升序的单个索引,每个方向 10 个。除非我的目标单词距离文档开头或结尾 10 个索引范围内,否则它的工作方式类似于 charm。

如果是,则会抛出“IndexError:列表索引超出范围”

我在这里看到了关于管理如何构建索引列表/与溢出索引( Python Loop: List Index Out of Range )接口(interface)的有用解释,但我的问题是我需要(好吧,我想/希望我能够)让程序请求索引并返回“”(如果它是文件的开头或结尾)而不是碰壁。

* 为了简洁起见,这里是设置索引然后进行索引查询的代码块,它们在代码中实际上并不是这样堆叠的。这里的括号可能有一个空格,我认为这不相关,但我想我会近似,以防我像往常一样错了。 *

for index in range(len(up_file_split_raw)):
if keyword.match(up_file_split_raw[index]):
start = max(0, index-assoc_wrd_range)
finish = min(len(up_file_split_raw), index+assoc_wrd_range+1)
assocd_wrd_list = string.join (up_file_split_raw[start:finish])

Break in Code

row_vals_2 = {
'Assoc_1':(up_file_split_raw[start:index][0]),
'Assoc_2':(up_file_split_raw[start:index][1]),
'Assoc_3':(up_file_split_raw[start:index][2]),
'Assoc_4':(up_file_split_raw[start:index][3]),
'Assoc_5':(up_file_split_raw[start:index][4]),
'Assoc_6':(up_file_split_raw[start:index][5]),
'Assoc_7':(up_file_split_raw[start:index][6]),
'Assoc_8':(up_file_split_raw[start:index][7]),
'Assoc_9':(up_file_split_raw[start:index][8]),
'Assoc_10':(up_file_split_raw[start:index][9]),
'KeyWord':(up_file_split_raw[index]),
'Assoc_11':(up_file_split_raw[index+1:finish][0]),
'Assoc_12':(up_file_split_raw[index+1:finish][1]),
'Assoc_13':(up_file_split_raw[index+1:finish][2]),
'Assoc_14':(up_file_split_raw[index+1:finish][3]),
'Assoc_15':(up_file_split_raw[index+1:finish][4]),
'Assoc_16':(up_file_split_raw[index+1:finish][5]),
'Assoc_17':(up_file_split_raw[index+1:finish][6]),
'Assoc_18':(up_file_split_raw[index+1:finish][7]),
'Assoc_19':(up_file_split_raw[index+1:finish][8]),
'Assoc_20':(up_file_split_raw[index+1:finish][9]),
}

最佳答案

使用它们剪辑到列表索引边界的切片。如果x是单词列表x[max(0, i-10):i]i之前的十个单词和x[i+1:i+1+10]i 之后的十个单词。

关于python - 处理不确定长度的文本时如何管理列表索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54299418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com