perl - 执行以下代码片段时。我可以看到错误“全局符号 "$colors"需要显式包名称”。必须打印键和值

标签 perl

尝试使用 for 循环打印水果及其颜色。

use strict; 
my %colors = (  apple      => 'red',
                orange     => 'orange',
                watermelon => 'green',
                grapes     => 'blue',
                rest       => 'pink' );
for (keys %colors) {    
   print("color of  $_  is   $colors($_)\n"); 
}

最佳答案

$colors($_) 必须是 $colors{$_}

访问哈希值需要使用{ }

关于perl - 执行以下代码片段时。我可以看到错误“全局符号 "$colors"需要显式包名称”。必须打印键和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71424119/

相关文章:

java - MATLAB - 删除二进制文件的元素而不加载整个文件

regex - 如何使用 Perl 获取数字的最后两位数字?

perl - 创建一个哈希字符串=>列表列表,我做错了什么?

python - 将 perl 正则表达式转换为 python 正则表达式

java - 以不同用户登录身份运行 Java 应用程序

perl - 使用perl获取AD组的用户

Perl - 使用 DBD Oracle 时出现文件过多错误

perl - 使用 'use utf8;' 给我 'Wide character in print'

bash - gnu-parallel:exec:perl:找不到

windows - 名称为 'svn_delta' 的临时文件已在/usr/lib/perl5/vendor_perl/5.14/Git.pm 第 1024 行使用