时间: 2021-07-31 作者:daque
赋值(assignment)演算符 标记 典型 证明 = $x=$y; 将$x的值指使给$y += $x+=$y; $x=$x+$y; 将$x加$y之后再指使给$x -= $x-=$y; $x=$x-$y; 将$x减$y之后再指使给$x *= $x*=$y; $x=$x*$y; 将$x乘$y之后再指使给$x /= $x/=$y; $x=$x/$y; 求出$x除以$y之后的商数,再指使给$x **= $x**=$y; $x=$x**$y; 将$x乘上$y次方之后再指使给$x %= $x%=$y; $x=$x%$y; 求出$x除以$y的余数此后,再指使给$x .= $str1.=$str2; $str1=$str1.$str2; 将$str1这个字符串再加上$str2这个字符串之后,再指使给$str1这个字符串 x= $strx=$y; $str=$strx$y; 反复$str字符串$y次,并反截止指使给str这个字符串 算术(arithmetic)演算符 标记 典型 证明 + $z=$x+$y 将$x和$y相加之后,再将截止指使给$z - $z=$x-$y 将$x减掉$y之后,再将截止指使给$z * $z=$x*$y 将$x和$y相加之后,再将截止指使给$z / $z=$x/$y 将$x除以$y之后,再将商数指使给$z % $z=$x%$y 将$x除以$y之后,再将余数指使给$z ** $z=$x**$y 将$x乘以$y之后,再将截止指使给$z ++ $x++;++$x; 犹如$x=$x++1;将$x加一此后再将截止指使给$x -- $x--;--$x; 犹如$x=$x-1;将$x减一此后再将截止指使给$x . $z=$x.$y; 将$x字符串和$y字符串贯穿之后,再将截止指使给$z 数值(numeric values)联系演算符 标记 典型 证明 > $x>$y 即使$x大于$y,归来1的值,要不归来0 >= $x>=$y 即使$x大于即是$y,归来1的值,要不归来0 $x$y 即使$x小于$y,归来1的值,要不归来0 = $x=$y 即使$x小于即是$y,归来1的值,要不归来0 == $x==$y 即使$x即是$y,归来1的值,要不归来0 != $x!=$y 即使$x不即是$y,归来1的值,要不归来0 => $x=>$y 即使$x大于$y,归来1的值,即使$x即是$y,要不归来0;&127;即使 $x小于$y,则归来-1的值 字符串(string values)联系演算符 标记 典型 证明 gt $str1 gt $str2 即使$str1大于$str2,归来1的值,要不归来0 ge $str1 ge $str2 即使$str1大于即是$str2,归来1的值,要不归来0 lt $str1 lt $str2 即使$str1小于$str2,归来1的值,要不归来0 le $str1 le $str2 即使$str1小于即是$str2,归来1的值,要不归来0 eq $str1 ep $str2 即使$str1即是$str2,归来1的值,要不归来0 ne $str1 ne $str2 即使$str1不即是$str2,归来1的值,要不归来0 cmp $str1 cmp $str2 即使$str1大于$str2,归来1的值,即使$str1即是$str2,归来0,即使$str1小于$str2,则归来-1的值 论理(logical)演算 1 $x&&$y(and) </p><p>$x $y 截止 </p><p>真(true) 真(true) 真(true) </p><p>真(true) 假(false) 真(true) </p><p>假(false) 真(true) 假(false) </p><p>假(false) 假(false) 假(false) </p><p>2 $x||$y(or) </p><p>$x $y 截止 </p><p>真(true) 真(true) 真(true) </p><p>真(true) 假(false) 真(true) </p><p>假(false) 真(true) 真(true) </p><p>假(false) 假(false) 假(false) </p><p>3 $x(not) </p><p>$x 截止 </p><p>真(true) 假(false)假(false) 真(true) </p><p>其它常用的演算符 训令:..区块演算符(range operator) </p><p>证明:这个演算符是perl谈话中私有的演算符,是一个很适用的演算符. </p><p>典型: </p><p>@digits=(1..9); #此时@digits=(1,2,3,4,5,6,7,8,9); @digits=(’01’..’05’); #此时@digits=(01,02,03,04,05); @char=(’a’..’e’); #此时@char(’a’,’b’,’c’,’d’,’e’,); @total=(1..3,’a’..’b’); #此时@total=(1,2,3’a’,’b’); </p><p>训令: 辨别演算式?演算1:演算式2 前提演算符(conditional operator) </p><p>证明: 这个语法的意旨和c谈话一律,即使辨别演算式的值是真(true)的话,则做演算 ,1的演算,即使辨别演算式是假(false)的话,则做演算式2的演算. </p><p>典型: </p><p>$price=($age>60)? 100:200; 即使$age大于60的话,则$price即是100,要不$price即是200. </p><p>常用的文献数据(file test)演算符 典型 证明 -r $file 即使$file是可读取的话,归来1的值 -w $file 即使$file是可写入的话,归来1的值 -x $file 即使$file是可实行的话,归来1的值 -e $file 即使$file生存的话,归来1的值 -o $file 即使$file是被实行才所具有的话,归来1的值 -s $file 归来$file的文献巨细(bytes) -f $file 即使$file是平常文献的话,归来1的值 -t $file 即使$file是文本文献的话,归来1的值 -b $file 即使$file是binary文献的话,归来1的值 -m $file 归来$file文献结果一次变动功夫到此刻的日子数