I must be missing something simple because I can't find a way to break out of a nested loop in Python.

Is there a way to label loops?

For the record, here's a Perl script of mine I'm trying to port...there may be 'malformed' lines in a TSV file I'm parsing that are better discarded than fixed.

my $ctr = 0;
OUTER:
while($line = <FILE>) {

    $ctr++;
    if ($ctr < 5) {next;}

    my @allVals  = split /\t/,$line;

    my $newline;
    foreach my $i (0..$#allVals) {

        if ($i == 0) {
            if ($allVals[0] =~ /[^[:print:]]/) {next OUTER;}

            $newline =  $allVals[0];
        }

        if (defined $headers{$i}) {

            #if column not a number, skip line
            if ($allVals[$i+1] !~ /^\d+$/) {next OUTER;}

            $newline .= "\t".$allVals[$i+1];
        }
    }
    print $newline."\n";

}
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to