Perl語言入門之二

寫在前面:在Perl中除非會改變表達式的意義,否則Perl的某些東西是可以省略;
5.子程序
  A.定義子程序,使用關鍵字sub.(可以定義在程序的任意位置,它的定義是全局的,如果重名,以最後一個爲主)
eg:
  sub marine{
   $n +=1;
   print "hello,sailor number $n!\n ";
   }
  B.調用子程序: &marine;或者省略&(&表在程序中查找子程序)
  C.返回值:最後運算結果就是子程序的返回值;建議用print協助調試.
  D.參數:Perl自動將參數列表化名爲特殊的數組變量@_,即參數爲@_[0]...@_[n]
  E.子程序中的私有變量:操作符my
eg: sub max{
  my($m,$n) = @_; #賦值,,($m,$n)私有變量
  if($m>$n){
   $m;
   }else{ $n}
}
  F.return操作符:從子程序中立即返回某個值
6.輸入與輸出
  A.讀取標準輸入:<STDIN>操作符
  B.鑽石操作符輸入:<> (可以在程序的參數帶文件或輸入),它的參數來自@ARGV數組,即可以強制的限定讀取的文件(eg.@ARGV=qw(a,b,c));
  eg:  while(<>){
         chomp;
         print "It was $_ !\n";
      }
  C.輸出到標準的輸出:print操作符讀一列表裏的所有值.
  D.使用printf格式化輸出,與C一樣
  E.文件句柄:(Perl6個特殊的文件句柄:STDIN,STDOUT,STDERR,DATA,ARGV,ARGVOUT)
  F.用die處理嚴重錯誤:$!可讀出系統出錯的信息
  G.改變默認的文件輸出句柄:select LOG
7.哈希
  A.訪問哈希元素:$hash{$key} .$hash{$key} = value
    訪問整個哈希:%hash .%hash =(key0,value0,key1,value1)
   或  .%hash =(key0 => value0,key1 => value1)
  B.哈希函數:keys函數返回哈希的key列表,values函數返回value值列表
    eg: my @k = keys %hash;  my @v = values %hash;
    each函數返回key與value
    eg:  while( ($key,$value) = each %hash ){
            print "$key => $value \n";
         }
    exists函數查看哈希某個鍵在不在: exists $book{"dino"};
   delete 函數從哈希中刪除指定的鍵: delete $book{"dino"};
  C.%ENV哈希:讀系統環境信息,
   eg:print "PATH is $ENV{PATH} \n";

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章