gpt4 book ai didi

perl - 默认丢失哈希值

转载 作者:行者123 更新时间:2023-12-04 22:27:32 27 4
gpt4 key购买 nike

我在 Perl 中创建了一个哈希 my %hash = (2 => 'dog', 1 => 'cat');
当我打印 $hash{3}它错误( use of uninitialzed value in print )这是预期的。但是如果不是在哈希中,有没有办法默认一个值?

最佳答案

my $value = exists($hash{$k}) ? $hash{$k} : 'default';

要实际更改哈希,请使用
$hash{$k} = 'default' if !exists($hash{k});

$hash{$k}如果存在,则始终定义,您也可以使用
my $value = defined($hash{$k}) ? $hash{$k} : 'default';

可以减少到
my $value = $hash{$k} // 'default';   # 5.10+

要实际更改哈希,请使用
$hash{$k} = 'default' if !defined($hash{k});

或者
$hash{$k} //= 'default';   # 5.10+

$hash{$k}如果存在,则始终为真,您也可以使用
my $value = $hash{$k} ? $hash{$k} : 'default';

可以减少到
my $value = $hash{$k} || 'default';

要实际更改哈希,请使用
$hash{$k} = 'default' if !$hash{k};

或者
$hash{$k} ||= 'default';

关于perl - 默认丢失哈希值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50261423/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com