Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Alexander Babanov                    2:5020/5609.69 24 Jun 2001  01:51:30
 To : George
 Subject : Re: Хэши
 -------------------------------------------------------------------------------- 
 
 Юґullo George!
 
  G> Как сложить два хеша следующим обpазом: если ключи совпали, то значением
  G> для ключа становится массив из элементов, соответствующих данному ключу?
 
 1. Hемного деструктивная методика:
 
 while($k = each %h1) {
   if(exists $h2{$k}) {
     $h1{$k} = [ $h1{$k}, $h2{$k} ];
     delete $h2{$k}; # (*)
   }
 }
 %h = (%h1, %h2); # либо @h1{keys %h2} = values %h2;
 
 2. Можно без (*), но тогда придется писать еще один цикл.
 
 3. Взять keys %h1 \ keys %h2 (IIRC есть модуль для работы с множествами),
 потом сделать @h1{разница} = @h2{разница}.
 
 CYa!!!
 
 ЪДВїЪДВВВДДДщщъъ ЪДВВВДї ЪїЪДВДДДДДДДДщщъъ   ЪДДДД 2:5020/5609.69 ДДДї
 іВіАґДЕ ґBabanov іВі ґВі іАґВіST BERSERKER   і babanov@earthlink.net і
 ... Еще наше поколение будет жить при Виагре! [предп. из писем Ильича к HКК]
 ---
  * Origin: Our governor can beat up your governor! (2:5020/5609.69)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Хэши   George   24 Jun 2001 01:05:10 
 Re: Хэши   Alexander Babanov   24 Jun 2001 01:51:30 
 Хэши   George   21 Oct 2001 23:06:09 
 Re: Хэши   Alexander Babanov   21 Oct 2001 21:46:56 
 Хэши   George   26 Oct 2001 08:31:09 
 Хэши   Serge Matveev   27 Oct 2001 03:31:14 
 Хэши   George   27 Oct 2001 12:31:33 
 Re: Хэши   Alexander Babanov   27 Oct 2001 21:53:39 
 Re: Хэши   vilfred   27 Oct 2001 11:30:35 
Архивное /ru.perl/47303b3590b8.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional