我有一个Perl哈希,我不知道它的内容是什么。
当我打印出它的键和值(检查附加的哈希循环图片)时,我得到的值看起来像一个字符串,其中每个值都包含另一个哈希(检查哈希循环图片的输出)。
如何打印出这些哈希的键和值?
答案 0 :(得分:0)
您的getVarHash()
方法返回一个哈希引用。当取消引用哈希并查看其内容时,您会看到它包含对其他哈希的引用。
实际上,那些第二级哈希不仅仅是普通的哈希引用-它们是有福的哈希。您可以从输出中哈希引用前面的Variable=
中看到这一点。 “祝福的哈希”是一个对象。因此,这里有许多“变量”的对象。那似乎不是标准的Perl类,因此,希望您会在某些地方找到有关如何使用该类的文档。
您应该真正将对象视为黑盒,并使用已发布的界面访问其中的数据。但是,如有必要,您可以将它们视为普通的哈希引用。
查看这种复杂数据结构中最简单的方法是使用Data::Dumper之类的东西来显示结构。
use feature 'say';
use Data::Dumper;
say Dumper $vars->getVarHash();
Perl拥有大量有关如何理解和操作复杂数据结构的良好文档。我建议您看看Data Structures Cookbook。