当前位置:   article > 正文

perl语言 入门(转)

perl语言helloworld

原文链接 https://www.jianshu.com/p/2dc7bef783ed

参考链接 perl入门 https://blog.csdn.net/ruby912/article/details/90721475

nux系统一般自带perl,可以在命令行运行。

1.Hello,World

  1. #!/usr/bin/perl -w
  2. print ("hello,world!\n");
  3. #print "hello,world!\n";

说明:
(1)第一行指定解释器,-w参数表示提示警告(或者使用use strict命令,执行更严格的检查);
(2)第二行输出hello, world!;
(3)如果习惯c的函数方式,print的参数可以打括号;
(4)第三行是注释,注释以#打头;
(5)如果习惯shell的方式,print的参数可以没有括号;
(6)双引号内可以使用转义字符;
不妨设文件名为helloworld.pm

程序的执行方法为:

  1. (1)perl helloworld.pm
  2. (2)chmod 755 helloworld.pm && ./helloworld.pm

2.常量

2.1数字

(1)Perl内部总按照“双精度浮点数”保存数字并执行运算;
(2)0377=>八进制;0xFF=>十六进制;

2.2字符串

(1)单引号表示字符串,不转义;
(2)双引号表示字符串,转义且解释变量;

2.3字符串操作符

(1)拼接操作符:“.”=>拼接字符串;
(2)重复操作符:“x”=>一个字符串重复多次;

  1. #!/usr/bin/perl -w
  2. print ("hello,"."world!\n");
  3. print ("hello " x 3);

输出结果是:

  1. hello,world!
  2. hello hello hello

最后要说明一点,Perl是弱类型语言,字符串和数字会相互转化,这一点和php一样。

3.变量

(1)变量以$开头,后接一个标示符;
(2)如何用变量获取用户输入?
使用,它获取用户的输入(一般以换行结束),可以使用chomp去除结尾的换行符。

  1. #!/usr/bin/perl -w
  2. $count = 0;
  3. while($count<10)
  4. {
  5. chomp($input = <STDIN>);
  6. print($input);
  7. $count++;
  8. }

(3)未定义变量
未定义的变量会赋予undef值,它既不是数字,也不是字符串;
它有可能被当做数字0使用;
使用define函数可以知道一个变量是否被定义;

  1. #!/usr/bin/perl -w
  2. $var = undef;
  3. print($var);
  4. if(defined($var))
  5. {
  6. print("defined!\n");
  7. }
  8. else
  9. {
  10. print("undefined!\n");
  11. }
  12. $var++;
  13. print($var);

它的输出是:

  1. Use of uninitialized value in print at undef.pm line 3.
  2. undefined!
  3. 1

(4)变量的作用域
my和our可以指定变量的作用域
my指定为局部作用域;
our指定为全局作用域(默认为our);

  1. #!/usr/bin/perl -w
  2. our $g_one = "global_one\n";
  3. $g_two = "global_two\n";
  4. {
  5. my $local_one = "local_one\n";
  6. print($g_one);
  7. print($g_two);
  8. print($local_one);
  9. }
  10. print($g_one);
  11. print($g_two);
  12. print($local_one);

输出为:

  1. global_one
  2. global_two
  3. local_one
  4. global_one
  5. global_two
  6. Use of uninitialized value in print at our_my.pm line 13.

4.数组与列表

4.1数组

和c的数组使用非常类似:

array[0]=”a0″;array[1]=”a1″;

$array[2]=”a2″;
4.2列表

圆括号内的一系列值,构成列表:
(1, 2, 3)
(“hello”, 4)
(“hello”, “world”, “yes”, “no”)
qw(hello world yes no)
(1..10)
说明:
(1)第一行,列表元素为1,2,3;
(2)第二行,列表元素为一个字符串,一个数字;
(3)第三行,列表元素为4个字符串,好多引号和逗号啊;
(4)第四行,qw操作符,用来建立字符串列表,而不用输入这么多引号和逗号,效果同(3);
(5)范围操作符“..”,表示一个范围,从左至右连续加一。
列表的赋值:
(

v1,v2, $v3) = qw(yes i am);

整个列表的引用,@操作符:
@list = qw(yes i am);
@none = ();
@huge = (1..5);
@stuff = (@list, @none, @huge);
pop和push操作符:
(1)pop弹出列表末端元素;
(2)push向列表末端压入元素;
shift和unshift操作符:
(1)shift移出列表首部元素;
(2)unshift向列表首部压入元素;
列表的输出:
(1)列表输出,只输出列表,元素间不含空格;
(2)列表的字符串化输出,输出列表,元素间加入空格;
(3)foreach控制结果,可以依次取得列表中各个元素
  1. #!/usr/bin/perl -w
  2. @list = qw(yes i am
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/738340
推荐阅读
相关标签
  

闽ICP备14008679号