Перевести Perl в Python

Дали задание. Перевести perl код в python. Python учу, но знаний для самостоятельной переписи не достаточно. Буду благодарен за помощь

 use Encode;
use locale;
use POSIX qw(locale_h);
use POSIX qw(strftime);
use LWP::UserAgent;
use HTTP::Cookies;
use LWP::Simple;
use utf8;


$x="man.src";
open F,"$x";
$i=0;
$shablon="";
while ($_=<F>) {
    chomp();
    $buf=$_;
    utf8::decode($buf);
    $buf=~s/\s+$//g;
    $buf=~s/\]/ /g;
    if (length($buf)>1) {
        $syt[$i]=$buf;
        $i++;
    }    
}
close F;
$N=$i;

$i=0;
open F,"an.txt";
while ($_=<F>) {
    chomp();
    $buf=$_;
    if ($buf=~m/^.*?\t(.+)$/) {
        $name[$i]=$1;
    }
    $i++;
    if ($i>199) { #99
        last;
    }

}
close F;
$M=$i;

#for ($i=0; $i<$M; $i++) {
#   print "\n$i  $name[$i]";
#}
#exit;

for ($i=0; $i<$M; $i++) {
    for ($j=0; $j<$N; $j++) {
        $mtr[$i][$j]=0;
    }
}            

open F,"fn.txt";
while ($_=<F>) {
    $buf=$_;
    utf8::decode($buf);
    if ($buf=~m/^(.+?):(.+)$/) {
        $nam=$1;
        $doc=$2;

        for ($i=0; $i<$M; $i++) {
            if ($name[$i] eq $nam) {
                #print "\n$i: $name[$i]--$nam------$doc";

                for ($j=0; $j<$N; $j++) {
                   if ($doc=~m/$syt[$j]/) {
                       $mtr[$i][$j]=1; #++; 
                   }
                }

                next;
            }
        }

    }
}
close F;

#for ($i=0; $i<$M; $i++) {
#    print "\n";
#    for ($j=0; $j<$N; $j++) {
#        print "$mtr[$i][$j] ";
#    }
#}

#exit;


for ($i=0; $i<$M; $i++) {
    for ($j=0; $j<$M; $j++) {
        $MTR[$i][$j]=0;
    }
}

for ($i=0; $i<$M; $i++) {
    for ($j=0; $j<$M; $j++) {
        if ($i!=$j) {
        for ($k=0; $k<$N; $k++) {
            $a=$mtr[$i][$k];
            $b=$mtr[$j][$k];
            if ($a>$b) {$a=$b; }
            $MTR[$i][$j]+=$a;
        }
        }
    }
}

for ($i=0; $i<$M; $i++) {
    print ";$name[$i]"
}
for ($i=0; $i<$M; $i++) {
    print "\n$name[$i]";
    for ($j=0; $j<$M; $j++) {
        $x=$MTR[$i][$j];
        if ($x<5) { $x=0 } else { $x=1 };
        print ";$x";
    }
}

Ответы (0 шт):