[英]Python - Determine first iteration of loop
我有一些读入文件的代码,跳过第一行,然后字段拆分每一行。 在第一遍(即第一行)中,我想将字段拆分的长度记录到一个变量中。 我知道我可以使用计数器变量来做到这一点,但有没有更清洁的方法?
line_count=1
for line in line_split[1:]:
field_split = line.split(b'\t')
if line_count=1:
number_of_fields=len(field_split)
line_count=line_count+1
您可以用枚举器替换定义line_count
:
for line_count, line in enumerate(line_split[1:]):
field_split = line.split(b'\t')
if line_count == 0:
number_of_fields=len(field_split)
number_of_fields=len(line_split[1].split(b'\t')) if len(line_split) > 1
for index, line in enumerate(line_split[1:]):
# Do whatever with index and line
这是最优的, if
它只评估一次。 通过在列表上使用enumerate
,您可以获得列表的索引和项目。
for line_count, line in enumerate(line_split[1:], 1):
field_split = line.split(b'\t')
if line_count == 1:
number_of_fields = len(field_split)
如果你只想检测第一行,你可以这样做 -
first_line = True
for line in line_split[1:]:
field_split = line.split(b'\t')
if first_line:
number_of_fields = len(field_split)
first_line = False
continue
“继续”将跳过该块的 rest 并立即移至下一行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.