perl学习(5) 输入和输出

本文介绍了Perl中处理输入和输出的各种方式,包括从标准输入设备读取、命令行参数的处理、标准输出的使用以及文件的读写操作。重点讲解了如何使用<STDIN>读取标准输入,foreach和while循环中的不同用法,以及如何打开、关闭和使用文件句柄进行文件输出。同时提到了错误处理和默认句柄的概念。
摘要由CSDN通过智能技术生成

1.1. 从标准输入设备输入

<STDIN>

行输入操作在到达文件的结尾时将返回undef在while循环的条件中不能使用chomp

 

while (defined($line = <STDIN>)) {

       print “I saw $line”;

}

 

 

在循环的内部,我们将看到每一行,一行接着一行,perl提供简写:

while(<STDIN>){

       print “I saw $_”;

}

while (defined($_ = <STDIN>)){

       print “I saw $_”;

}

两者是等同的

在进行深入讨论前,我们要澄清一些事:这种简写只在特定的情况下有效,默认的情况下不会将一行读入变量$_。仅当while循环的条件判断部分只包含行输入操作才有效。

 

对于foreach用法有些区别:

foreach(<STDIN>){

       print “I saw $_”;

}

 

while 循环中,Perl 读入一行,将它赋给变量,然后进入循环。再回到开头,读入下一行。在foreach 循环中,由于行输入操作在列表的context 中使用,因为foreach 需要一个列表作为其参数。

这一点影响很多,一次读一行和一次读一个文件差别很大。

1.2.命令行输入

参数为要被程序顺序处理的文件名

尖括号操作(<>)是一种特殊的行输入操作,其输入可由用户选择:

可以使标准输入,也可以使命令行参数。

 

while (defined($line = <>)){

       chomp($line);<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值