用于在python中处理文本时使用两个列表的循环逻辑

用于在python中处理文本时使用两个列表的循环逻辑,python,loops,parsing,text,logic,Python,Loops,Parsing,Text,Logic,我正在分析一堆文本文件。每个文件都有我需要检查和更新的部分。 我阅读了每个文件,找到了我感兴趣的每个部分的开头。我将每个部分的行号放入一个列表,将所有行放入另一个列表 因此,我最终得出以下结论,例如: l1=[7, 23, 45, 67, 89, 111, 133, 155] l2拥有文件中的所有行 我感兴趣的线路从7号线开始,22号线结束,23号线开始,44号线结束,依此类推 我想阅读第7-22行,验证内容或更新内容,然后继续下一行 我对编程非常陌生,我不能让它正常工作。有时我会接近,但它从

我正在分析一堆文本文件。每个文件都有我需要检查和更新的部分。 我阅读了每个文件,找到了我感兴趣的每个部分的开头。我将每个部分的行号放入一个列表,将所有行放入另一个列表

因此,我最终得出以下结论,例如:

l1=[7, 23, 45, 67, 89, 111, 133, 155]
l2拥有文件中的所有行

我感兴趣的线路从7号线开始,22号线结束,23号线开始,44号线结束,依此类推

我想阅读第7-22行,验证内容或更新内容,然后继续下一行

我对编程非常陌生,我不能让它正常工作。有时我会接近,但它从来没有真正工作的权利

我尝试了两个嵌套的for循环,一个for循环和一个while循环,但都没有用。 我可以在外部循环中跟踪索引,但是内部循环从来没有真正起作用,因为索引和内容列表是绑定在一起的

我知道这是一个基本问题,但我不能让它工作。 我也愿意接受任何优雅解决方案的建议。 多谢各位

for i in range(len(Index)):
    j = i
    for j in range(Index[i+1]):
        tempList = Content[i: i+1]
        # do some validation here on the tempList 

通过迭代l1,您已经拥有了引用数据所需的索引,因此不需要第二个循环。您要做的是引用l1中的两个连续值。我通过调用
l1[I]:l1[I+1]

import numpy as np    

l1 = [7, 23, 45, 67, 89, 111, 133, 155]
data = np.random.randint(0, 9, 155)  # Your data here

for i in range(len(l1)-1):
    templist = data[l1[i]:l1[i+1]]
    # validation here

我创建了一个随机数据数组,但您将把自己的数据放在那里。

首先,我建议您练习增量编程:编写几行代码;在你继续前进之前,确保他们做了你想做的事情。其次,“我不能让它工作”不是一个特定的编程问题。您提出的问题对于堆栈溢出来说太广泛了:我们致力于关注的问题,而不是一般的问题解决方案。首先,你需要设计你的程序。编写伪代码,或制作流程图,或任何对您的思维过程有效的表示。你想用手工的方式写一个解决这个问题的方法。一旦你弄明白了,就把问题的各个部分写下来,一次写几行。写一个循环,可以遍历你的行号列表,并打印出你想要使用的行号范围。一旦成功,编写一个内部循环,可以迭代这些行号。查看如何使用列表片段来支持您的编码。感谢您的回复,感谢您抽出时间。我不是程序员,所以这一切对我来说都是新鲜事。虽然这很有道理,但我的下一篇文章将会有很大的改进。我完全想得太多了。这很简单。非常感谢。