位置: 编程技术 - 正文

Perl中的控制结构学习笔记(perl调试)

编辑:rootadmin

推荐整理分享Perl中的控制结构学习笔记(perl调试),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:perl脚本执行,perl脚本调用perl脚本,perl调用perl脚本,写出perl中最常见4种控制流,perl脚本执行,perl调试,perl调用perl脚本,写出perl中最常见4种控制流,内容如对您有帮助,希望把文章链接给更多的朋友!

一、语句的种类

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

二、条件语句if

形式

说明:

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

三、条件语句unless

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

四、循环语句while

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

五、循环语句until

(1) 与while相反,执行语句,直到表达式为真停止.(2) 为真时停止,表达式为退出条件.至少先执行一次语句,再进行条件判断.

六、for循环

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

例如:for($line=<>,$count=1;$count<;$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对每个元素进行操作.

Perl中的控制结构学习笔记(perl调试)

八、循环控制

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

九、标记

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

例子:

十、continue语句块

continue{语句}

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

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

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

十二、小结

1.条件语句:

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实现拆分数据表(mysql)并迁移数据实例 随着业务量的增长,可能需要对表进行拆分来提高性能。下面这个例子是将www.gimoo.net的users表拆分成个表ttlsa_user_0-ttlsa_user_9。拆分迁移数据程序如下

perl实现检测服务器中的服务是否正常脚本分享 程序调用远端服务,为了确保可用性最好在使用前进行健康检测,将异常的服务排除。#!/usr/bin/perl#usestrict;useIO::Socket;my@servers;$servers[0]=['...',]

perl操作MongoDB报错undefined symbol: HeUTF8解决方法 因为shell操作mongo比较麻烦,只好尝试使用perl操作mongo,perl需要操作mongodb必须先安装相应的驱动,大部分人使用cpan安装,个人觉得太麻烦,使用cpanm安装p

标签: perl调试

本文链接地址:https://www.jiuchutong.com/biancheng/372404.html 转载请保留说明!

上一篇:Perl函数(子程序)学习笔记(perl常用函数)

下一篇:使用perl实现拆分数据表(mysql)并迁移数据实例(perl -pi)

  • 增值税专用发票电子发票可以抵扣吗
  • 增值税进项税抵扣时间
  • 税控盘退费怎么做会计分录
  • 增值税普票没有税号可以开吗
  • 红冲发票需要收回原发票政策
  • 填仓2021
  • 购入库存商品未付款怎么做账
  • 红字使用禁忌
  • 税务局开运费发票需要带什么
  • 石油天然气管道保护法
  • 学校付学生的现金奖励入什么科目
  • 医院的重要性
  • 建筑公司不需要预缴增值税的有
  • 企业季度所得税资产总额怎么填
  • 为什么增值税发票综合服务平台进不去
  • 土地增值税成本扣除项目
  • 企业所得税多交了必须退税吗
  • 税务咨询费用
  • 企业开增值税普通发票 电子版
  • 外籍人员探亲签证
  • 成品油生产企业身份归类管理办法
  • 进项税和销项税怎么算
  • windows 11什么时候
  • php字符串变量
  • wordpress 常用函数
  • root怎么开oppo
  • 蓝莓外面的霜
  • 员工补偿金分录
  • 无形资产的摊销计入什么科目
  • 福利部门领用原材料进项税额可以抵扣吗
  • html基础总结
  • element级联动态加载
  • php输出mysql查询结果
  • sbc奇思妙想
  • hadoop集群搭建完整教程
  • php 路由实现
  • 酒店押金的账务处理
  • 计提医疗保险费的会计分录
  • 贷款减值准备怎么进损益类账户
  • 事业单位无形资产折旧是当月还是下月
  • 合同没有约定发票税点谁承担怎么办
  • 四舍五入产生的原理
  • mongodb启动命令 linux
  • 营改增后建筑企业财务核算
  • 累计预扣法利弊
  • 教育费附加计费单位
  • 预付账款是负数有什么税收风险
  • 当月的印花税需要交吗
  • 冲销主营业务收入怎么做分录
  • 工程结算直接做主营业务成本
  • 扣缴个人所得税怎么计算
  • 成本费用总额占营业总收入的比率
  • 微众银行贷款到私账吗
  • 企业对私账户合法吗
  • 总分类账与明细分类账的关系
  • debian9.6安装教程
  • linux下多个mysql5.7.19(tar.gz)安装图文教程
  • 怎么修改注册表的权限
  • mac怎么隐藏桌面文件
  • 在系统注册表中注册
  • windows有哪些好用的软件
  • linux临时目录一般存在哪个文件夹
  • mac如何打开程序菜单
  • linux磁盘分区表
  • surface准备就绪
  • linux用yum
  • sendmail端口
  • windows10预览
  • html的基本语法规则
  • javascript继承原理
  • js正则表达式gi
  • cocos2d怎么用
  • 用户体验ui
  • ubuntu on android
  • jquery日期插件
  • android draglistview中拖动异常显示,无法移动到原先位置
  • js面向对象写法
  • Android EventBus实战
  • 社保每个月几号截止申报
  • 海淀九所税务局电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设