Perl编译时错误,未初始化值
我在perl方面遇到了问题。这是我的节目:Perl编译时错误,未初始化值,perl,compiler-errors,initialization,Perl,Compiler Errors,Initialization,我在perl方面遇到了问题。这是我的节目: my $data = decode_json $json; my @infoids = keys %{$data -> {listinginfo}}; foreach my $infoid (@infoids) { my $price = $data -> {listinginfo}{$infoid}{converted_price}; print "$price" . "\n"; #30 } 我正在使用strict和warnings,
my $data = decode_json $json;
my @infoids = keys %{$data -> {listinginfo}};
foreach my $infoid (@infoids) {
my $price = $data -> {listinginfo}{$infoid}{converted_price};
print "$price" . "\n"; #30
}
我正在使用strict和warnings,我得到了一个错误:在C:\Users\Seb\perl.pl第30行的字符串中使用未初始化的值$price。任何关于为什么会发生这种情况的帮助都将不胜感激。提前谢谢
赛博
编辑:
我用这个代码登录网站,我想可能有问题。它不返回任何错误,但未成功将我登录
my $login = "https://steamcommunity.com/login/home/?goto=market%2F";
my $username = "USR";
my $password = "PASS";
my $mech = WWW::Mechanize->new();
$mech->cookie_jar(HTTP::Cookies->new());
$mech->get($login);
$mech->form_name('loginForm');
$mech->field(login => $username);
$mech->field(passwd => $password);
$mech->click();
我认为这个表达式
$data->{listinginfo}{$infoid}{converted_price}代码>未初始化。尝试
my$price=defined$data->{listinginfo}{$infoid}{converted\u price}?$data->{listinginfo}{$infoid}{converted\u price}:0代码>
这是if.的缩写形式。。然后。。否则。谢谢你的回复,当我这样做时,我只得到很多0。你知道这是为什么吗?