課題への挑戦(修正メモ)
もっとアッサリ書けることに今更気付いたのでメモ。
Ruby
#!/usr/bin/ruby -w require 'csv' code = {} CSV.open("code.csv", "r") do |c| code[c[0]] = c end CSV.open("master.csv", "r") do |m| puts [ m + code[m[0]] ].join(",") end
Python
#!/usr/bin/python import csv code = {} for c in csv.reader(file('code.csv', 'r')): code[c[0]] = c for m in csv.reader(file('master.csv', 'r')): print ','.join(m + code[m[0]])
Perl
今度は Perl がダメというorz
#!/opt/local/bin/perl -w use strict; use warnings; use Data::Dumper; use Text::CSV_XS; my $csv = Text::CSV_XS->new( { quote_char => ’’, escape_char => ’’, sep_char => ’,’, eol => $\, } ); my ( $io, $code ); open $io, "< code.csv"; while ( my $row = $csv‐>getline ( $io ) ) { #... } close $io; open $io, "< master.csv"; while ($row = $csv‐>getline($io)) { #... } close $id; exit 0;
- 実行結果
$ ./csvConv2.pl
Unrecognized character \xE2 at ./csvConv2.pl line 8.
後回し。