从Perl到Python的翻译,简要介绍

eng*_*ree 0 python perl translation range min

我真的需要帮助.我尝试将这个Perl翻译成Python,但它似乎没有做我想要的.

谢谢!

Perl的:

@X_max = &MaxValue(@xCoords);
     $maxX = int(10 * $X_max[0]/5);
    @X_min = &MinValue(@xCoords);
    $minX =  int(10 * $X_min[0]/5);
    $rangeX = &Range($minX, $maxX);
    print GRID "X:\t $maxX\t $minX\t\t $rangeX\n";
Run Code Online (Sandbox Code Playgroud)

Python(到目前为止):

_max = max(xCoords) 
max(X) = int(10 * max((X)0/5))
X_min = min(xcoords)
min(X) = int(10 * min((X)0/5))
range(X) = range(min(X), max(X))
print('X:') ('%4s') % min, '%15s' % max, '%25s' % range
Run Code Online (Sandbox Code Playgroud)

Axe*_*man 6

Perl的看起来并不像它只是Python的min,maxrange功能.因为MaxValue返回值列表,在下一步中将忽略这些值,因为代码只是采用列表中的第一项.所以它可能是这样的:

x_max  = max( xcoords );
maxx   = int( 10 * x_max / 5 );
x_min  = min( xcoords );
minx   = int( 10 * x_min / 5 );
rangex = range( minx, maxx );
grid.write(  "X:\t{0}\t{1}\t{2}\t{3}".format(minX, maxX, rangeX));
Run Code Online (Sandbox Code Playgroud)

甚至:

rangex = range( 2 * min( xcoords ), 2 * max( xcoords ));
Run Code Online (Sandbox Code Playgroud)

然而,范围似乎表明它只是一个简单的变量,也许只是maxx - minx + 1.所以我认为Python range不会起作用.

至少可以说,这是过于复杂的代码:10 * x / 5 <=> 2 * x.