知識的價值不在于占有,而在于使用。

生信自學網-速科生物-生物信息學數據庫挖掘視頻教程

當前位置: 主頁 > 生信編程 >

生信應用perl語法基礎

時間:2019-07-30 07:30來源:生信自學網 作者:樂偉 點擊:
Perl 有強大的字符串處理能力,尤其是在正則表達式 上的應用、語法及程序結構等方面,perl 能提高字符串處理 的速度。
Perl 最初是Unix 系統管理員的工具,平日用來處理無數繁瑣的事物。時至今日,Perl 已發展成一套功能齊備的程序語言,橫跨所有的操作平臺,其用途包括Web 程序設計、數據庫操作、XML 處理以及系統管理等。在Perl 擅長處理的問題中,其中約有90%與文本處理有關,所以Perl 擁有優異的文本處理能力

Perl 有強大的字符串處理能力,尤其是在正則表達式上的應用、語法及程序結構等方面,perl 能提高字符串處理的速度。
如果需要學習更多生信編程方面的課程,生信自學網為大家準備了幾門課程:
《Perl語言在生信中的應用》
《R語言生信繪圖實操》

一、Perl 語言特點
Perl 不隨意限制數據的大小,只要你有充足的內存。遞歸的深度也不受限制。關聯數組使用可以根據需要擴展以避免性能衰退。Perl 能利用復雜的模式匹配技巧來快速掃描大量數據。除了善于處理文本,Perl 也能處理二進制數據[2]。Perl 語言的優點:(1)強大的正則表達式和模式匹配功能(接近理想的正則表達式語言);(2)復雜靈活的數據結構(Array of Array,Array of Hash,Hash of Array,Hash of Hash 等);(3)Unicode 支持(相對AWK 與C)

Perl 語言的缺點:(1)動態類型語言,不是很可靠;(2)自然語言,是優點也是缺陷,使得Perl 語言代碼可能晦澀難懂;(3)智能語言,是優點也產生不足:根據上下文解釋編程者之意,可能產生臆斷;也因此產生種種編程陷阱;(4)不是很優美。多種方法做事,有時會讓編程者無所適從;(5)性能問題。Perl 靈活的數據結構和處理性能通常不是很高(相對C/C++),若需要高性能的處理有時需要使用其它語言重寫。
perl語言的核心是正則表達式,在文本處理上非常有優勢,與python類似,但語法不同,perl的語法很靈活,用多了才會覺得好用。

常用知識點總結:
·        perl語法類似于C語言(perl源于Unix),語句由逗號劃分,代碼層次使用花括號{}劃分,但是不必聲明變量類型;
·        標量變量($name),數組(@name),哈希結構(%name),類型標識符,文件句柄沒有標識符;
·        哈希結構可以使用列表創建,但不要以為它也是由圓括號括起來的;在使用鍵時,用花括號。(特別注意)
·        數字之間比較用(==、>=、<=、!=),字符串之間比較則用(eq、gt、lt、ge、le)
·        print函數,不一定需要括號。幾種情況:print $name(直接輸出) ;print ‘$name’(基本不用,錯誤的,原樣輸出);          print “$name”(有時會用,會自動替換); print 函數在做文件輸入時(文件句柄),不能有逗號,只能用空格。
·        @_ 是函數傳參時放置參數的數組,可以從中取實參;$_ 是默認參數的意思,指的是在不指定的情況下,程序處理的上一個變量;shift 是將數組的第一個元素 $array[0] 移走, 并將這個元素回傳(return) (堆棧一節有詳細講解)。
·        shift函數是取數組的第一個元素,缺省就取@_的第一個函數,這句一般用在程序的開頭,用于接收程序的參數,或者子函數的開頭,用于接收子函數的參數。
·        句柄和文件的關系,文件必須被打開,并賦與句柄,才能操作;有的句柄可以直接使用,如STDIN、STDERR;廣義上,標量變量就是一種代表數據的句柄。
perl中數值和字符串可以隨意的使用遞增和遞減運算符。

如果需要學習更多生信編程方面的課程,生信自學網為大家準備了幾門課程:
《Perl語言在生信中的應用》
《R語言生信繪圖實操》

責任編輯:樂偉
作者申明:本文版權屬于生信自學網(微信號:18520221056)未經授權,一律禁止轉載!
加生信自學網群
BioWolf二維碼生成器
頂一下
(2)
100%
踩一下
(0)
0%
------分隔線----------------------------
發表評論
請自覺遵守互聯網相關的政策法規,嚴禁發布色情、暴力、反動的言論。
評價:
表情:
用戶名: 驗證碼:點擊我更換圖片
TCGA腫瘤微環境
推薦內容
單基因發文套路
m6A