我有一個關鍵的散列,現在我想填充數組中的散列值。我該如何創建一個哈希值來自任何數組的值?
my %hash = (key1 => "" , key2 => "")
my array = (1 ,2)
所需的輸出
my %hash = (key1 => 1 , key2 => 2)
我有一個關鍵的散列,現在我想填充數組中的散列值。我該如何創建一個哈希值來自任何數組的值?
my %hash = (key1 => "" , key2 => "")
my array = (1 ,2)
所需的輸出
my %hash = (key1 => 1 , key2 => 2)
你可以使用一個hash slice:
my %hash = (key1 => "" , key2 => "") ;
my @array = (1 ,2);
@hash{('key1','key2')} = @array;
print Dumper\%hash;
輸出:
$VAR1 = {
'key1' => 1,
'key2' => 2
};
不能使用哈希的現有密鑰( @hash{ keys(%hash) } = @array;
),因爲您可以輕鬆地以{ key1 => 2, key2 => 1 }
作爲期望的輸出。
你甚至沒有嘗試過甚至單行編碼? – ssr1012
你怎麼知道哪些數組元素映射到哪些鍵?哈希是無序的。 – Sobrique