Логические операторы или присваивания в Perl не могут работать? - PullRequest
0 голосов
/ 18 октября 2018

Я хочу проверить, что моя переменная $ id равна 497 или равна 200, если $ id не равен 497 или $ id не равен 200, то mail, но когда я запускаю пример, как показано ниже, я устанавливаю $ id = 497 вручную, но запустите код, он печатает "не равно \ n";

my $id = 497;
if($id != 497 || $id != 200)
   {
      print "not equal\n";
   }
else
  {
      print "equal , not to mail\n";
   }

1 Ответ

0 голосов
/ 18 октября 2018

Это говорит не равно, потому что $id != 200 это правда.|| возвращает значение true, если любой из операндов имеет значение true.

Вы хотите сказать:

if ($id != 497 && $id != 200)

, поэтому не равно выводится, только если $ id не равен ни 497, ни 200.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...