好吧,我还是 Perl 的新手,所以这个问题的答案似乎很明显,但是我在 Python 中做了一些工作,并且在学习 if、elsif 和 else 循环时遇到了问题;具体来说,它们不能正常工作。这是我的代码:
my $x = 0;
print "X has been set to ". $x .".\n";
while ($x<11)
{
$x++;
print "The value of x is now ". $x .".\n";
if ($x>4, $x<7){
print "Something\n";
system ("Pause");
}
elsif ($x>7, $x>11){ #<--Here
print "Something else\n";
system ("Pause");
}
elsif ($x==11){
print "Last line\n";
}
} #<-- and Here
system "Pause";
也许我的问题现在很明显,但如果不是,问题是它似乎没有评估任何表达式;它只是打印它找到的第一个循环,在这种情况下是 if 循环。如果我删除它,或者注释掉它,它会直接进入第一个 elsif 循环;也就是说,无论 x 的值如何,它都会打印它找到的第一个循环,而无需任何类型的评估。当我添加
use strict;
use warnings;
我收到警告“在第 16 行的 void 上下文中无用使用数字 gt (>) ”,第 24 行也是如此。我在原始代码中用箭头和此处标记了这些内容。我在做某事/不做我应该做的事吗?