1、讀取標準輸入
chomp($line = );
2、判斷是否讀到檔案末尾
defined($line = );
3、讀取檔案內容
while()
foreach ()
while與foreach的差別:while一次讀取一行,foreach一次讀取全部,然後對列表進行迴圈,最好用while;
4、鑽石操作符:<>
根據呼叫引數,從指定地方讀取資料,例如:./my_program file1 file2 file3,依次從file1、file2、file3一行一行地讀取資料;
while(<>)
<>的引數來自@argv陣列,可以對@argv進行處理,控制<>的執行;
5、標準輸出 print
print @arry;
#把陣列的元素列印出來
print "@arry";
#列印出乙個字串,陣列內插
print在陣列內插是會在元素之間加入空格;
print (2+3)*4;
#會輸出5,print認為緊跟其後的括號為函式呼叫,= (print (2+3))*4
6、printf 格式化輸出
%g:自動選擇浮點、整數或指數;
%d:整數,%5d:不到5位前邊補充空格,超過5位自動延伸;
%s:字串,%5s:不足前邊補齊,超過自動擴充套件,%-5s:左對齊;
%f:浮點數,四捨五入;
%%:輸出%
輸出陣列:printf "the item are :\n".("%10s\n" x @items),@items;
7、開啟與關閉檔案控制代碼
open config,"dion";
#開啟乙個輸入流
open config,"#開啟乙個輸入流
open bedrock,">fred";
#開啟乙個輸出流
open log,">>logfile";
#追加寫入
5.6版本以後:open config,"<","dino"、open config,">","dino"、open config,">>","dino"
返回值為是否成功(1/0),要檢查是否open成功開啟!
close config;
#關閉檔案控制代碼
建議檔案控制代碼用大寫;
8、處理嚴重錯誤和警告
if(!open log,">>loggile")
die會終止程式的執行,warn不會終止程式執行,其他與die用法一致;
$!:顯示系統服務請求的錯誤;
資訊尾部加上換行符,則不顯示錯誤的行號和檔名,例:die "not enough arguments\n";
9、使用檔案控制代碼
,與用法相同;
寫入:print config "input info";
printf config "your name is %s",$name;
10、改變預設的檔案輸出控制代碼
select config;
#使用完畢,切換回
11、$| = 1;
#每次操作結束立即重新整理緩衝區
12、perl保留的特殊檔案控制代碼:stdin、stdout、stderr、data、argv、argvout
復用標準的檔案控制代碼:open stderr,">>err_log";
13、使用say輸出
從perl 5.10以後可以使用;
除輸出帶換行符的字串外,其他與print一樣;
輸出到檔案控制代碼:say configfile 「hello」;
Perl語言學習筆記 6 雜湊
1 雜湊的鍵是唯一的,值可以重複!2 訪問雜湊元素 hashname 雜湊為大括號,陣列為方括號,鍵為字串 family name firstd 給雜湊元素賦值 3 雜湊鍵支援任意表示式 foo na family name 獲取 family name對應的值 4 訪問整個雜湊 family na...
perl語言學習 教程
perl語言是乙個指令碼語言 更接近於c 更接近於底層 你要問我和python有什麼區別?我也不知道。最近在看perl語言寫的程式,就自己總結一下啦 經常看到perl語法中 這兩個符號。但是我記得就知道試試 標量 開始,如 a b 是兩個標量。陣列 開始 如 a b 是兩個陣列。雜湊 開始 a b ...
perl學習筆記 輸入與輸出
注意 1,會處理所有的輸入,直到所有輸入的結尾為止 一般在乙個程式中只有乙個 若出現多次則可能發生錯誤。2,呼叫引數 ar ar 是乙個裝著呼叫引數的陣列 1,讀取從鍵盤輸入的值 注意 只讀取鍵盤輸入的一行,到換行符結束 用chomp去掉換行符 若沒有賦值給變數,則預設存在 中 usr bin pe...