• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Perl中的控制结构学习笔记

    一、语句的种类

    计算机是一种工具,优势在于执行重复任务.循环执行,循环语句。
    需要作出大量的判断,按条件执行,条件语句。
    顺序语句。
    表达式真假值总结
    表达式不一定是逻辑表达式,但一定要得出真假值。
    假值:
    逻辑值为假
    值为0
    字符串为空
    列表为空
    undef
    其它情况为真值

    二、条件语句if

    形式

    复制代码 代码如下:

    if(表达式){         空格忽略,断行可以不同
                        if(表达式)
    语句}               {
    elsif(表达式){       语句
                         }
      语句}
    ….
    else{
       语句
    }

    说明:

    (1) elsif和else部分可以省略.
    (2) 注意elsif关键字.
    (3) 语句块{}必须有,但可以为空
    (4) 可以嵌套.
    (5) 含义:为真时执行,表达式为执行条件.

    三、条件语句unless

    复制代码 代码如下:

    unless(表达式){语句}

    与if条件含义相反,执行语句除非表达式为真,为真时退出,表达式为退出条件.

    四、循环语句while

    复制代码 代码如下:

    while(表达式){语句}

    (1) 表达式为真时执行,是执行的条件.
    (2) 必须设置条件有为假的可能,否则无法退出,无限制循环.
    do{语句}while(表达式)
    至少执行一次,先执行一次再判断。

    五、循环语句until

    复制代码 代码如下:

    until(表达式){语句}

    (1) 与while相反,执行语句,直到表达式为真停止.
    (2) 为真时停止,表达式为退出条件.
    复制代码 代码如下:

    do{语句}until表达式)

    至少先执行一次语句,再进行条件判断.

    六、for循环

    for(表达式1;表达式2;表达式3){语句}
    (1) 表达式1:初始化控制变量或其它变量,只在第一次循环时执行,可以由
        逗号分隔给多个变量赋值.
    (2) 表达式2:每次循环时比较,为真时循环.
    (3) 表达式3:每次执行完循环后才执行,改变控制变量的值,一般为自增.
    (4) 三个表达式都可以省略,但两个;必须保留.for(;;)
    (5) 第一,三表达式都可以使用,执行多个语句。

    例如:for($line=>,$count=1;$count10;$line=>,$count++){print $line;}

    七、foreach语句

    foreach $w(列表或数组){语句}
    (1) ()内为数组@a,或列表(1,2,3)
    (2) $w可以是新变量,也可以是已使用的变量,在循环结束后变量值恢复.
    (3) 每次循环把列表或数组中的值依次赋于$w,直到列表为空,可以不必关心数组长度.
    (4) 若在循环体中修改$w的值,则相应的数据元素值也改变.
    (5) 当列表中是常量时,$w的值不能修改.
    (6) $w和@a可以相同,如$a(@a)
    (7) for和foreach可以互换,通用.

    foreach的形式
    (1) foreach $a(@a){} 一般形式.
    (2) foreach $a(1,2,3,4){} 列表
    (3) foreach $k(keys%h){} 散列形式
    (4) foreach $a(@a[1,2,3]){} 只对数组的部分元素
    (5) foreach (@a){} 省略循环变量,缺省为$_
        $_缺省变量,print为打印$_变量.
    (6) grep,map函数相当于foreach对每个元素进行操作.

    八、循环控制

     last:退出循环
     next:执行下一循环,循环中next下的语句本次不执行,对于for要执行变量自增.
     redo:重新执行本次循环,对于for不执行变量自增,在do语句中无效,不建议使用.
     goto:跳转,不能跳转到循环或子程序内,现在结构化编程都不建议使用.

    九、标记

    标记只能由字母和下划线组成,一般为大写,由:分隔。
    标记定义:定义在循环语句前或语句前(goto)
    一般用到嵌套循环的内层跳到最外层时,其中last是退出最外层循环,程序继续向下走,
    不是跳转到最外层再执行.

    例子:

    复制代码 代码如下:

    #!/usr/bin/perl
    print “使用标签:”;
    LABEL:for($i=1;$i5;$i++){
            for($j=1;$j5;$j++){
                 print “$j”;
                 last LABEL if $i==3;
             }
            }
    print “\$i=$i”;

    十、continue语句块

    continue{语句}

    (1) 紧跟在循环语句后,在循环体执行完,下一次条件判断之前执行.
    (2) 也可用于由{}标识的语句块之后.
    (3) 从last跳出后不执行,但next执行.

    十一、单行条件语句与循环语句

    条件语句:语句在前,条件在后.print $a if $a==0;但是先测试条件再执行语句.
    同理:

    复制代码 代码如下:

    unless: print $a unless($a==0);
    while: print $a while($a–==0);

    注意:循环语句不要丢失控制变量,造成死循环.
    用||,的条件语句:$a==0print $a;
                      open(F,'file')||die “can't open”;
    die函数:在控制台标准错误输出信息后退出程序.
    warn:输出信息后不退出程序,只起警报作用.
    $!:内部变量包含错误代码.
    $@:内部变量包含错误信息.

    十二、小结

    1.条件语句:

    复制代码 代码如下:

    if (表达式){语句}
      elsif(表达式){语句}
      ….
      else{语句}

    2.单行语句 if(表达式);

    3.|| or and 形式

    4.?:形式

    5.unless(表达式){语句}
      单行语句 unless(表达式);

    6.while until循环

     while(表达式){语句}
     do{语句}while(表达式)
     while(表达式){语句}continue{语句}
     单行语句 while(表达式)
     until(表达式){语句}
     do{语句}until(表达式)
     until(表达式){语句}continue{语句}
     单行语句 until(表达式)

    7.for foreach循环

     for(表达式1;表达式2;表达式3){语句}
     foreach (@a){语句}
     foreach $k(keys%hash){语句}

    8.循环控制:last,next,redo

    9.标记:goto LABEL

    您可能感兴趣的文章:
    • 学习perl的unless控制结构
    • perl 控制结构 条件控制 if while
    上一篇:Perl函数(子程序)学习笔记
    下一篇:Perl实现删除Windows下的图片缓存缩略图Thumbs.db
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Perl中的控制结构学习笔记 Perl,中的,控制,结构,学习,