Perl语言入门(第五版) 读书笔记(一)---列表、数组、子程序

 

第二章 标量数据(数字和字符串)
1. 点(.)字符串连接运算符,小写字母x为字符串重复运算符;
2. hex()、oct()转换字符串;
3. chomp()移除字符串行尾的换行符;

第三章 列表与数组
1. 数组和列表的定义方法:
2. $size = $#array 获取数组array的个数,最后一个元素的索引
3. 列表 qw(one two three ),  qw{/usr/bin /usr/local/bin},  !、/、#、()、{}、[]、<>都可以作为qw的分隔符。
4. 赋值:
($one, $two)= ("abc","efg")
($one, $two)=  qw[/usr/bin /usr/local/bin]
         ($one, $two)= ($two,$one)交换
          @array = qw(one two three )
     @array = ("abc", @other, $one)
          @array = 1..10   添加10个元素
5. push和pop在数组尾端操作
         push(@array,8);   $one = pop(@array)
6. shift和unshift在数组头部操作
         unshift(@array,8);   $one = shift(@array)
7. reverse()反转列表或数组
         @abc = reverse 1..5     @abc = reverse(@abc)
8.sort()字符串排序列表或数组
         @num = sort(@num)     @num = sort 97..102 #按字符串排序
9. foreach循环      foreach $rock (@rocks)  { print $rock.”\n”;}
10. $_代表“老地方”    foreach(@rocks) {print $_.”\n”;}
11. 列表上下文(列表、数组、哈希)与标量上下文
         @people = qw(fred barney betty)
         @sorted = sort @people #列表上下文 barney, betty, fred
         $num = 42 + @people #标量上下文,得到42+3=45
         @list = @people #得到数组
         $num = @people #得到3
sort函数标量上下文为undef
$backword = reverse qw/abc efg/  #得到gfecba
scalar强制引入标量上下文  scalar(@rocks) 返回数组个数
12. 内插变量输出变量名要用\转义或用单引号:
print "\@rocks  \$rock"; # 输出"@rocks $rock"
print ‘@rocks  $rock’;

第四章 子程序
1. use strict; #严格编译
use warnings; #输出警告
2. perl函数都有返回值,默认为return $_;
3. 函数定义与调用
sub proc
{
     my @array = $_;
     @array = sort @array;
     return @array;
}
@sorted = &proc(abc, efg);
4. 调用函数时,一般可省略&号;如果和内置函数重名,不能省略与号(&)
5. 持续私有变量用state定义,多次调用保留上次的值,列表上下文初始化不支持state.

你可能感兴趣的:(Perl语言入门(第五版) 读书笔记(一)---列表、数组、子程序)