From: Tanaka Akira Date: 2002-11-08T17:05:05+09:00 Subject: [ruby-dev:18698] Re: Enumerable#zip In article <4.3.2-J.20021108161559.034233c0@blade.nagaokaut.ac.jp>, Shin-ichiro HARA writes: > $BAjJQ$o$i$:ITB7$$$J%G!<%?$X$NBP1~$NLdBj$O;D$j$^$9$,!"$=$l$b$"$jF@$^$9$h(B > $B$M!#$G$b$=$&$9$k$H!"(Ba, b, c, ... $B$K(B Array $B$G$J$/$F!"(BEnumerable $B$rF~$l(B > $B$?$/$J$j$^$;$s!)(B $B$$$l$F$O$$$1$J$$$s$G$9$+(B? > $B$=$7$F$=$l$J$i!"(BEnumerable.map(a, b, c, ...) $B$H$$$&L>(B > $BA0$G$$$$$7!"F1MM$K(B Enumerable.each(a, b, c, ...) $B$J$I$N%$%F%l!<%?$b9M(B > $B$($i$l$k!#$@$@$7!"$3$N!VJ?9T(B each $B7O!W$H$$$&$N$O!":#$^$G$N(B Ruby $B$NJ70O(B > $B5$$+$i0oC&$7$?$H$3$m$,$"$k$N$G$9$,!#(B zip $B$N>l9g$O!"$Y$D$KJB9T$KF0$+$J$/$F$b$$$$$N$G$O(B? def Enumerable.zip(arg, *args) result = [] arg.each {|v| result << [v]} until args.empty? arg = args.shift arg.each_with_index {|v, i| result[i] << v} end result end $BCm(B: 1. $BITB7$$$J;~$NOC$OL5;k$7$F$$$^$9$,@h$K=R$Y$?DL$jNc30$,E,@Z$@$H;W$$$^(B $B$9!#(B 2. $BC/$+(B Enumerable.zip() $B$H$7$FE,@Z$J5sF0$r65$($F$/$@$5$$!#(B $BNc30$+(B [] $B$I$A$i$+$@$H$O;W$&$N$G$9$,!#(B -- [$BEDCf(B $BE/(B][$B$?$J$+(B $B$"$-$i(B][Tanaka Akira] $B!V$U$($m(B! $B$o$+$a$A$c$s:n@o$G$9$(C"=$B!W(B(Little Worker, $B7KM7@84](B)