基本上,这就是我的文本文件:
1,2,3,4,5
1,3,2,5,4
2,4,5,3,1
etc
我想做的是,制作一个遍历每个索引的for循环,但不是我选择忽略的循环。
在这个例子中,我创建了一个变量[index]来指示应该忽略哪个索引。该变量由程序生成,除了作为索引的值之外是不必要的。
让我们说; variable = 1
所以在这个例子中,我想要为每一行忽略每行的第二个数字。 我该怎么做?
答案 0 :(得分:0)
您可以使用enumerate
循环访问数据,同时访问这两个值和索引:
for d in data:
for i,el in enumerate(d):
if i is not variable:
此处data
是一个包含子列表的列表,每个子列表代表一行文件。循环使用enumerate
循环遍历每个子列表 - i
是当前元素的索引,el
是元素。有了这个,您可以使用if来检查i
是否不等于variable
,您不想处理的索引 - 如果不是,则继续进行处理。
或者,您可以在不包含该特定索引的情况下读取该文件:
variable = 1;
data = [];
with open('test_file.txt', 'r') as f:
for line in f:
temp = line.strip().split(',')
del temp[variable]
data.append(temp)
此处程序简单使用del
删除索引variable
处的元素,并将其余元素附加到最终数据集。
要加载整个文件,只需删除程序加载部分中的del temp[variable]
行。您可以使用enumerate
循环来排除您不想处理的索引。