タグ

ブックマーク / mt.endeworks.jp (1)

  • ハッシュに値を振り分ける時のコード - D-6 [相変わらず根無し]

    ハッシュに値を振り分ける時のコード 例えばCSVなファイルを読み込んで、それをハッシュの中に展開、格納と言った感じの動作をPerlで行いたかったとします。例えば 1,2,3 と言った行を my %hash = ( 'col1' => 1, 'col2' => 2, 'col3' => 3 ); のようなハッシュに展開する関数が欲しいわけです。皆さんはこれをどういう風に実装しますか?ぱっと思いつくのはforループですよね my @colums = ('a', 'b', 'c'); my @values = (1, 2, 3); # もちろん実際にはsplit(/,/, $line)とか、CSVパーサーを使う my %h; for (0..$#columns) { $h{ $columns[$_] } = $values[$_]; } 実はこのようなCっぽい書き方はPerlでは大概遅いです。D

    sunaoka
    sunaoka 2008/03/11
  • 1