Re: [問題] python or perl?

作者: Neisseria (Neisseria)   2014-07-07 14:03:15
其實 Perl 應該也是符合你的需求,像是一些取代 shell 的功能
可以參考 Minimal Perl for UNIX and Linux People, Manning, 2006
在前半部,就有一些用 Perl 取代 grep, sed, awk 和 find 指令的用法
後半部是一些 script 的範例,但是有些例子我覺得沒有很好用就是了
還有一本比較新的 Perl One-Liners, No Starch Press, 2013
裡面有許多有趣的 Perl 的用法,學會了還蠻方便的
如果覺得這種 one-line Perl 的寫法太怪的話
也可以回歸寫 script 檔的方式來寫 Perl 程式
Perl 的語法的確比較多變,但也可以寫得清楚
有關這方面,可以看 Perl Best Practises, O'Reilly, 2005
這本書有中文版,Perl 最佳實務, O'Reilly, 2007
雖然不需要完全照這本書的方式來寫 Perl,這本書算是一個很好的參考
不至於會寫出像火星文的 Perl
不過 Perl 的確有一些問題,像是物件導向的寫法太雜,沒有一個統一的方法
有 Perl 原來的 OOP,有 Inside-Out object,有 Moose 等等
而且 Perl 有些函式庫後來就沒更新了,使用時需判斷一下那個好用
Perl 6 也變成了一個幾乎沒在使用的語言
如果是以趣味來看,多學一個語言其實也沒有壞處
以 Perl 和 Python 來看,還是有一些相似的地方
至少那個差異不會像學完 Python 再去學 LISP 一樣大 XD
※ 引述《bunby (Bunby)》之銘言:
: 小弟未正式學過程式 大概目前的程度只看得懂i=i+1之類的Code
: 由於之後工作上的需求 會接觸到程式 目前考慮python 與 perl兩種語言
: 爬文比較如下
: python :
: Code可讀性較好
: 學習資源較多
: perl :
: 有CPAN可以抓很多module可使用
: 對於編寫程式有較大的彈性[也是缺點]
: 以上兩種語言在Linux下皆可正常使用
: 但python在Unix下, 似乎還需裝其他的編譯器
: 寫程式的目的:能夠寫出shell的功能[輸入指令, 就會自動幫我去系統上抓data等等...]
: 想請問各位先進 有什麼建議嗎?
: 謝謝
作者: bunby (Bunby)   2014-07-07 15:49:00
謝謝你的回覆~
作者: timTan (用口頭禪區分年記)   2014-07-07 22:17:00
其實寫Perl 真的有腦力開發的快感~~但是快感都不能持續....
作者: bunby (Bunby)   2014-07-07 22:50:00
因為perl都是寫較短的程式為主嗎?
作者: cybelia (@@)   2014-07-08 20:44:00
因為用很腦力開發的方式寫perl,明天就看不懂了...orz
作者: jokester (蠻王科科)   2014-07-08 21:06:00
perl被你們講得好慘= =我是覺得還好
作者: del680202 (HANA)   2014-07-09 07:30:00
perl到後來我只拿他的regex來用...作文字處裡perl很強大但是看到一堆$#@|的火星符號我就頭痛
作者: jokester (蠻王科科)   2014-07-09 08:28:00
用perl實行外部程式(system)和regex都比py方便甚多OOP確實頗原始 這個沒話講 XD
作者: bunby (Bunby)   2014-07-09 12:25:00
謝謝樓上幾位的分享~
作者: CindyLinz (Cindy Wang)   2014-07-15 03:06:00
神來也的遊戲 server 程式幾乎都是 perl 喔~ 規摩很大..
作者: LiloHuang (十年一刻)   2014-07-17 23:16:00
CindyLinz 都出現了,實在得推一下 Perl :D個人認為兩種語言都值得學習,久了自然會有一些心得 :)
作者: Hall (找回做研究的快樂)   2014-07-18 01:42:00
Perl的資料型態自由度很大 換到寫Python就覺得限制不少不過為了程式的可讀性跟維護性 多點限制是無可厚非啦~
作者: bunby (Bunby)   2014-07-20 20:06:00
謝謝樓上幾位的意見

Links booklink

Contact Us: admin [ a t ] ucptt.com