Perl 學習筆記 標量資料

2022-03-15 15:17:27 字數 2124 閱讀 4995

最近學習perl, 準備看一遍入門指南,關鍵的東西還是記錄下來,以便以後複習和檢視參考.

筆記來自<1. 在perl內部,不區分整數值和浮點數值,所有數字的內部格式都相同,採用"雙精度浮點數"運算,自動轉換.範圍值(1e-100到 1e100)

2. 可以在乙個很大的數中間插入下劃線,便於閱讀: 61_298_040_283_768,在取模運算時,如果其中一邊或兩邊都是負數,則不同的perl版本可能會有不同結果.不能計算負數的負數次方,因為會得到複數,用複數可以用math::complex模組.

3. 字串:

1) 最長字串沒有長度限制,遵循"無內建限制"(no built-in limits)的原則

2) 空字元(null)在perl中沒有特殊的意義,perl會用其他方式記住字串的長度.而不是用空字元來表示字串的結尾.

3) 可以將乙個圖形檔案或編譯過的可執行檔案讀到乙個perl字串變數中,修改內容後再寫回去.

4) 字串直接量兩種形式:

單引號內的字串: 除了單引號和反斜線符,單引號內的所有字元都代表它們自己,包括換行符(注意:\n在單引號內不代表換行,而時反斜線和n兩個字元.同時,只有在後面是另乙個反斜線或者單引號時,前面的反斜線才有轉義的含義)

雙引號內的字串: 其中的反斜線可以用來表示控制字元,或是用八進位制或十六進製制寫法來表示任何字元.用\n表示換行符.支援變數內插(variable interpolated).

5) 字串操作: 用 . 號連線;用小寫字元 x 來計算重複,如: "roger" x 3,表示3個roger字串相連,如果左邊運算元是數字,則會先將其轉換為字串,右邊運算元如果時小數,會先將其取整.

4.   宣告警告資訊

1 perl -w my_program #

方法12

3#! usr/bin/perl -w #方法245

#! usr/bin/perl

6use warnings #

方法37

8 #! usr/bin/perl

9use diagnostics #

方法4

5.   運算子.

數值運算使用符號 == != < > <= >= 等等

字串中同樣的運算採用 eq ne lt gt le ge等等

undef == 0 返回1,undef eq '' 返回1,undef 既不是字串,也不是數值,相當於null,當成數值使用時會被當成0,當成字串使用時會被當成空字串.perl程式設計師常常根據需要,把新變數當成0或空字串來使用.複製乙個undef 變數到另乙個變數美柚問題,但是用print 輸出就會引發警告.

6. 控制結構

1> 可選的程式塊周圍一定要加上花括號表示界限(在c語言中不一定)

2> perl 中沒有專門的布林資料型別,它是靠一些簡單規則的判斷的.

a) 如果值為數字,則0為假,其他為真

b) 如果值為字串,空串為假,其他為真

c) 非數值或字串,會先轉換成數字或字串再判斷

d)特例:字串 '0' 和數字0在perl中指同乙個標量,所以,'0' 是唯一乙個被當成假的非空字串.

e) 可以使用 ! 來取反

7.   獲取使用者輸入

1

#! usr/bin/env perl

2$line = ; #

行輸入操作符

3if($line eq "

\n")else\n"

;7 }

使用者輸入字串之後再輸入換行符'\n',輸入資訊就儲存在字串$line中,但是'\n'也成了字串的一部分,它並不會像c語言一樣會將'\n'轉換成'\0'.很多時候想去掉結尾的'\n'符,可以用chomp()處理.

1

#! usr/bin/env perl

2$line = ;

3chomp($line); #

去掉換行符'\n'

4#也可以 chomp($line = );

5if($line eq "

a")else

chomp的括號也可以去掉,遵循perl的慣例,除非去掉括號會改變表示式的意義,否則括號用不用都可以.chomp函式返回的是去掉的字元數 ,如果字串後面有多個換行符,chomp()只會去掉最後乙個.

Perl學習筆記(二) 標量資料

一 數字 perl內部並不存在整數值 程式中用到的整型常量會被轉換成等效的浮點數值 浮點數直接量 小數點與前置的正負號都是可選的,數字後面也可以加上用 e 表示的10的次方識別符號 即指數表示法 例如 1.25 7.25e45 7.25乘以10的45次方 12e 24 負12乘以10的 24次方 1...

Perl 學習筆記(小駱駝書) 標量資料1

讀起來有些困難。perl 允許用下劃線來分隔它,因此可以像下面這樣書寫 61 298 040 283 768 2 1 4 非十進位制整數 同許多其它語言一樣,perl 也允許使用非10 為底的數字。八進位制以0 開頭,十六進製制以0x 開頭,二進位制0b 開頭 在十 六進製制中a 到f 或者a 到f...

Perl語言程式設計 標量資料

標量是perl語言中最簡單的資料型別。在perl語言中,標量用符號 表示,大多數的標量是數字或者字串,標量之間可以通過操作符 例如相加或者串聯 產生新的標量資料。標量資料的 可以是檔案 裝置,也可以在程式設計的過程中直接寫進去 這種方式也稱為直接量 perl內部會把所有的數字均作為雙精浮點數來處理。...