РЕДАКТИРОВАТЬ Извините, я забыл самую важную часть здесь.Каждая клавиша может иметь более одного значения.Извинения тем, кто уже ответил.print
и join
будут использоваться позже для печати нескольких значений для $key
в одной строке.
В приведенном ниже примере кода, предполагая, что значение $keyvalue
постоянно меняется, я пытаюсьиспользовать одну строку (или что-то подобное), чтобы проверить и проверить, существует ли текущий $keyvalue
.Если это так, то ничего не делать.Если это не так, то нажмите его.Эта строка будет находиться в операторе while, поэтому ее необходимо заключить в несколько строк.
Сохранение порядка не имеет значения, если нет повторяющихся значений.
my $key = "numbers";
my $keyvalue = 1;
my %hash = ($key => '1');
push (@{$hash{$key}}, $keyvalue) unless exists $hash{$key};
Я не получаю никаких ошибок с use strict; use warnings;
, но в то же время это не работает.В приведенном выше примере я ожидал бы, что, поскольку значение по умолчанию 1
, $keyvalue
не будет выдвигаться, так как оно также 1
.Возможно, я все обернулся ...
Есть ли какие-то корректировки, чтобы заставить это работать или какие-то альтернативы, которые можно использовать вместо этого для достижения того же самого?