【问题标题】:How Does One Use a Variable as a Hash Key in Perl?在 Perl 中如何使用变量作为哈希键?
【发布时间】:2011-09-12 17:51:05
【问题描述】:

我一直在努力将变量作为变量分配给 Perl 中的键。我想要做的是提示用户输入要保存在变量中的值,该变量用作访问和打印哈希表中保存的值的键。以下代码有助于说明我的问题:

my $key = 0;
print( "Enter the value for your key\n" );
$key = <>;
my %hash = (
   a => "A",
   b => "B",
);
    print( $hash{$key} );

问题在于 print( $hash{$key} );不会在屏幕上打印任何内容,但 printf( $hash{"a"}; 会;我不明白。任何帮助和澄清将不胜感激。提前致谢。

【问题讨论】:

标签: perl variables hash


【解决方案1】:

$key 最终被设置为(例如)"a\n",而不是"a"。使用 chomp 内置删除尾随换行符:

$key = <>;
chomp $key;
...
print $hash{$key};

【讨论】:

  • 我自己更喜欢单行chomp($key = &lt;&gt;);
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-26
  • 2014-10-16
  • 1970-01-01
  • 2016-01-28
  • 2019-11-17
  • 2010-09-10
相关资源
最近更新 更多