|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : frolcov@solaster.fintech.ru 2:5020/400 19 Apr 2000 14:29:16 To : All Subject : Re: Знатокам -------------------------------------------------------------------------------- > DG>Как красиво из списка получить список ссылок на куски исходного > DG>списка фиксированной длины? То есть, например из > DG>(1,2,3,4,5,6,7,8,9,10,11,12) сделать > DG>([1,2,3],[4,5,6],[7,8,9],[10,11,12]) > DG>Можно это сделать одним оператором без всяких глупых циклов? > Совсем без глупых циклов не получится. > Если длина совсем фиксированная и маленькая то > while (@in) { > push @out, [ shift(@in),shift(@in),shift(@in) ]; > } Почему это не получится? Еще как получится! @arr=qw(1 2 3 4 5 6 7 8 9); $n=0; @resarr=map { $n+=3; [@arr[$n-3..$n-1] ]; } @arr; $#resarr=$#resarr/3; только что-то сие достаточно малоэлегантно. --- ifmail v.2.15dev4 * Origin: AO Fintech (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1703963c6283a.html, оценка из 5, голосов 10
|