我基本上是一個網絡人,所以不擅長編寫腳本。perl hecking all value once
在編寫一些腳本時,我遇到了下面的要求。
我有一個散列陣列的「1」的某些值或「2」和我的要求
如果所有的值等於比其他「1」(可以是「2」或「3 「),那麼它會打印一些陳述,然後從該循環中出來。
如果任何值等於「1」,那麼它會打印一些聲明。
例如:
my %hash_array1=(A=>2,B=>2,C=>2);
my @array2=values (%hash_array1);
foreach my $line (@array2) {
if ($line!=1) {
print BOLD GREEN "\rNo Evolution ",RESET;
last;
}
else {
print BOLD RED "Evolution \n",RESET;
}
}
其打印
No Evolution
以上代碼的工作以及預期提到hash_array,因爲所有的值都是非 「1」,而不是低於哈希運作良好
my %hash_array1=(A=>1,B=>2,C=>2);
它打印的地方
Evolution
No Evolution
這不符合我的預期。我想在這裏打印一次,不應該再打印「Evolution」和「No Evolution」。 (但循環應繼續迭代)
請讓我知道是否需要更清晰。
問候
馬赫什
因爲我是網絡人,所以我必須善於編寫腳本;) –