如何在Perl中结合哈希值?

前端之家收集整理的这篇文章主要介绍了如何在Perl中结合哈希值?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
将两个哈希值合并到%hash1中的最佳方法是什么?我总是知道%hash2和%hash1总是有唯一的键。我也喜欢单行代码,如果可能的话。
$hash1{'1'} = 'red';
$hash1{'2'} = 'blue';
$hash2{'3'} = 'green';
$hash2{'4'} = 'yellow';

解决方法

快速回答(TL; DR)
%newHash = (%hash1,%hash2); %hash1 = %newHash;

## or else ...

@hash1{keys %hash2} = values %hash2;

## or else ...

%hash1 = (%hash1,%hash2)

概述

>上下文:Perl 5.x
>问题:用户希望将两个哈希1合并为一个变量

>使用上面的语法简单变量
>对复杂的嵌套变量使用Hash :: Merge

陷阱

>当两个哈希值都包含一个或多个重复键时该怎么做

>如果具有空值的键/值对是否覆盖具有非空值的键值对?
>(注意:原始问题排除了这种情况,但它是一个重要的考虑)

也可以看看

> PM post on merging hashes
> PM Categorical Q&A hash union
> Perl Cookbook 5.10. Merging Hashes
> websearch:// perlfaq“merge two hashes”
> websearch:// perl merge hash
> https://metacpan.org/pod/Hash::Merge

脚注

1 *(aka关联数组或字典)

原文链接:https://www.f2er.com/Perl/173550.html

猜你在找的Perl相关文章