0

我想知道将函数转换应用于数据集(或列向量)中的每个值的最快方法(就执行时间而言)是什么。以下代码符合,我想知道它是否可以提高效率。

#!/usr/bin/perl

use 5.10.0;
use String::Nysiis qw(nysiis);

open( my $l,  '<', 'Strings.txt' )          or die "Can't open locations: $!";
open( my $o,  '>', 'NYSIIS.txt' )          or die "Can't open locations: $!";

while ( my $line = <$l> ) {
  my $transform = nysiis($line);
  print "$line,$transform,\n" ;
  print( $o ("$line,$transform"),"\n" );

}
close $o;
4

1 回答 1

4

不,只是微信号。

  • 不要自动冲洗。
  • 将整个文件加载到内存中。
  • 如果nysiis不关心换行符,请不要咀嚼。
  • 不要打印两次。改为使用tee。(好的建议期。)

您可以通过并行化获得收益。

于 2013-02-22T02:51:48.933 回答