《Perl语言入门》自学笔记--第一章

原创 2004年07月15日 21:38:00

    终于可以拿到这本大作了。正是由于翻过第二版,因此毫不犹豫的上网购买了这本小骆驼书。不过刚拿到的时候一直怀疑是不是定错书了,因为第二版第一章写的非常漂亮,把一个简单的例子渐渐扩大,最后到一个1,2百行的程序。非常引入入胜,这次想重温却没有机会了。第一章作者完全是在讲一些perl的相关知识。只在最后列出了一个5行的小例子。虽然感觉骤然下降,不过对perl的热情不减,还是需要从头好好看看书来学,而不想每次写教本都乱翻书,结果虽然可以完成任务不过总是记不住。现在下定决心了从头来过。希望能把这本书啃完!
废话少说,开始学习!


    我也不从程序开始,先讲一些学perl的人必须知道的知识。perl的发明人:Larry Wall。这是一个非常热心的人。我一直定着Perl的maillist,常常能看到Larry Wall在回答众多爱好者的问题,而且用语简洁,幽默。相信订maillist的人一定也会深受感动。并且他保证了perl将永远免费!怎么能不支持他和可爱的Perl呢!还需要将的是CPAN,这个Perl社区的“大卖场”。里面包含了Perl的一切的一切:Perl本身的源代码、各个平台上二进制版的Perl、示例、文档、Perl扩展(几乎所有Perl的模块都可以在上面找到)以及关于Perl的消息档案。网址是: http://www.cpan.org/ ,当然我们的linux社区也有他的镜像站点:http://cpan.linuxforum.net/ 。还有最后一点我想罗嗦的,Perl不需要象c,c++, java那样需要编译后才能执行。Perl只需要让他加上可执行权限即可运行你的程序。好了,铺垫就这些,比书简洁多了^_^。
第一章有2个程序,第一个是著名的hello world。我本来不想在这儿写出了,不过为了完整性,就把他也写出来了:


示例1:
#!/usr/local/bin/perl -w
print "Hello,world!/n";

非常简单,真正的程序就一行(第二行)。第一行是每个Perl程序都需要写的。至于perl在你的系统的哪里,可以用which 或者whereis来查找。一般都在/usr/bin/perl或者/usr/local/bin/perl这两个地方。而-w是我自己的习惯。这是一个非常好的参数,他会指出你的程序哪里不规范需要注意的地方。建议你也加上。只有好处没有坏处^_^。第二句我想大家都能够看得懂。(/n是换行得意思)


示例2:
#!/usr/local/bin/perl -w
@lines = `perldoc -u -f atan2`;
foreach (@lines) {
s//w<([^>]+)>//U$1/g;
print;
}

这个例子就很有Perl得味道了。一大堆让你头晕得符号。不想仔细讲解这个例子,因为牵涉太多后面得知识,贴出来只是为了看看程序执行得结果:看看大家得眼睛是不是够厉害^_^。还有一点要指出得是第二行不是单引号,而是反引号,里面可以放入shell得命令!
先来讲讲perldoc这条命令:它是专门用来读出并显示Perl得文档、相关扩展以及实用工具。来看看perldoc -u -f atan2这条命令得执行结果:
bash-2.05$ perldoc -u -f atan2
=item atan2 Y,X

Returns the arctangent of Y/X in the range -PI to PI.

For the tangent operation, you may use the C<?XML:NAMESPACE PREFIX = POSIX />
function, or use the familiar relation:

sub tan { sin($_[0]) / cos($_[0]) }


最后再来看看程序执行得结果:
bash-2.05$ ./ex1-3.plx
=item atan2 Y,X

Returns the arctangent of Y/X in the range -PI to PI.

For the tangent operation, you may use the POSIX::TAN()
function, or use the familiar relation:

sub tan { sin($_[0]) / cos($_[0]) }
看出区别了吧~~~,呵呵!结合程序先理解一下吧。
第一章的习题也就是让你感受一下这两个例子,因此就不打出来了。以后的习题我会打出来的。

()>

Unity Shader入门精要学习笔记 - 第7章 基础纹理

纹理最初的目的就是使用一张图片来控制模型的外观。使用纹理映射技术,我们可以把一张图“黏”在模型表面,逐纹素地控制模型的颜色。 在美术人员建模的时候,通常会在建模软件中利用纹理展开技术把纹理映射坐标存储...
  • u010848412
  • u010848412
  • 2017年06月03日 23:11
  • 1409

Perl笔记:Perl语言入门(第六版) - IO文件目录

输入与输出 读取标准输入 chomp($line = ); chomp截掉最后的换行符,标准输入。 while (defined($line = )) { print "$line"; } 简写whi...
  • u012740949
  • u012740949
  • 2014年01月27日 14:53
  • 1426

《OpenCV3编程入门》学习笔记一:邂逅OpenCV

一:内容介绍本节主要介绍以下内容: 1. OpenCV3环境搭建 2. 快速上手尝试:图像显示、读取并播放视频、调用摄像头采集图像二:学习笔记1. 环境配置在OpenCV3中,项目架构发生了一些变...
  • NNNNNNNNNNNNY
  • NNNNNNNNNNNNY
  • 2016年09月14日 10:50
  • 4391

Perl语言入门笔记 第八章 用正则表达式进行匹配

#用正则表达式进行匹配 =pod m// = // = m%%,m||,m,m{},m(),匹配的时候根据需要写自己的定界符,像qw省略双引号定界符一样 模式匹配修饰符: 跟在定界符后面的,//...
  • q1241580040
  • q1241580040
  • 2015年09月21日 01:44
  • 2097

Perl语言入门笔记 第九章 用正则表达式处理文本

=pod #第九章:用正则表达式处理文本 用s///进行替换 s///查找替换功能 s/Barney/Fred/; #把Barney替换成Fred s/with (\w+)/against $1...
  • q1241580040
  • q1241580040
  • 2015年09月21日 01:47
  • 654

<Perl语言入门>读书笔记 | 三. 列表和数据

读书笔记的第三章,列表和数据,也就是所谓的数组。这里最重要的一个概念是,Perl中的表达式的上下文概念。...
  • Titan0427
  • Titan0427
  • 2016年02月25日 18:50
  • 586

Perl语言入门笔记 第十六章 进程管理

=pod 第十六章 进程管理 身为程序员最棒的一面,就是能运行别人的程序,不必自己动手去写。 在perl里有一句话叫 “办法不止一种” system函数: 在perl中,启动子进程最简单的...
  • q1241580040
  • q1241580040
  • 2015年09月21日 02:08
  • 362

Perl语言入门笔记 第六章 哈希(hash)

=pod 哈希 哈希表里只是一堆的键值对而已,而没有任何顺序,键可以是任意字符串,值也是 awk的哈希键值对增多的时候会逐渐变慢,而perl没有这个缺点 访问哈希元素: ...
  • q1241580040
  • q1241580040
  • 2015年09月21日 01:33
  • 815

Perl语言入门笔记 第十二章 文件测试

=pod 第十二章 文件测试 文件测试操作符: -e:判断文件是否存在 在创建新文件程序之前,应先检查指定的文件是否已经存在,以免意外覆盖重要的电子表格或是宝贵的生日档案。要...
  • q1241580040
  • q1241580040
  • 2015年09月21日 01:58
  • 583

Perl语言入门笔记 第三章 列表和数组

#!/usr/bin/perl -w use utf8; use diagnostics; =pod 列表: 列表是标量的有序集合 数组: 是存储列表的变量 更精确的说是列表是数据,数组是变量...
  • q1241580040
  • q1241580040
  • 2015年08月23日 18:40
  • 267
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:《Perl语言入门》自学笔记--第一章
举报原因:
原因补充:

(最多只允许输入30个字)