1.初识Perl
最近因为上课的原因,在学习Perl语言,一种精致灵活的脚本语言。Perl,1987年由Larry Wall发明,最初的目的是简化unix操作的脚本语言。从一个.pl文件的文件头部便可看出些端倪:
#!/usr/local/bin/perl
这有多像Bash脚本啊,Perl也经常和同为脚本语言的Python拿来比较。当然 现在Perl的功能作用已经被扩展到很多领域了,尤其是网络CGI的编程。在CPAN的库支持下,Perl变得越来越强大~~这些还没学到所以也是后话了。
2.变量
对于一门语言来说,变量声明从某种角度来讲是最重要很基础的。很多人会拿 “Hello world” 作为程序入门,尽管这是很实用,但是hello world 真的是有太多局限性了,会写一个Hello world 基本是 rien。但如果学会一门语言的变量类型及其声明,那真是半只脚跨进门了。
由于Perl是一种灵活的动态语言,其变量类型是很弱的,总体来讲就三种,或者说是数据结构。
- $Var,这是Perl中最基本的变量,它可以用来表示整数,小数,字符串这些最基本的变量类型,还有个$_,这算是Perl的内置变量,有点像PHP中的一些超级变量。其实PHP就是深受Perl影响的一种语言。
- @Tab,@声明的是一个table,或者说数组,用简单的一对( )和,相隔里面可以放$var,也可以存储 @tab嵌套。对Table可以做些pop,push的操作插入删除元素,还可以sort。很像java里的vector容器类,不过要简单得多,灵活得多。遍历table用foreach循环十分方便,根本不用去考虑什么迭代器之类的。
- %HashTab,% 声明一张哈希表,也就是键值对(Key1,value1,Key2,value2…) 这样的Hash table是很强大的,它的keys和values 分别是table。
3.灵活性
小菜鸟
@tripled;
$count = @numbers;
for ($i = 0; $i < $count; $i++)
{
$tripled[$i] = $numbers[$i] * 3;
}
Perl 内行
@tripled;
for $num (@numbers)
{
push @tripled, $num * 3;
}
高级 Perl 黑客
@tripled = map { $_ * 3 } @numbers;
高手的程序总是很简洁的完成需要的功能,在最后一段程序中他利用了Perl的map 映射函数,这让我想起来了曾经学过一些的Lisp,这是古老又高级的语言啊。
第一篇到此结束,以后再写些关于Perl的实际应用。




