Выбор случайного ключа из хеша

Как выбрать случайный хеш-ключ? Для моей карточной игры на Flash + Perl я пытаюсь выбрать случайную карту из хеш-кода, где ключи: "6 пики "," 6 треф "и т. д. вот так:

my $card;
my $i = 0;
for $card (keys %{$user->{HAND}}) {
    last if rand(++$i) < 1;
}
delete $user->{HAND}->{$card};
print "random card: $card\n";

Интересно, правильный ли это путь или есть лучший способ.

14
задан zb226 24 February 2018 в 14:09
поделиться