使用Python時(shí)注意問題大匯總
使用Python時(shí),你需要注意許多問題,首先先要大家理解下什么是Python,其實(shí)這種語言具有非常簡捷而清晰的語法特點(diǎn),適合完成各種高層任務(wù),幾乎可以在所有的操作系統(tǒng)中運(yùn)行。
我想說的是python是這個星球最美的編程語言。據(jù)說有些schema語言用起來很cool,在我學(xué)會它們之前我保留我的看法。 Python能作什么呢?www.python.org能夠找到答案,其實(shí)基本上你可以問python不能作什么。我還是先告訴大家我用python作什么。
1.計(jì)算器
python的shell是個很好的命令行計(jì)算器,支持各種復(fù)雜的計(jì)算式,用了它之后,我的心算能力急劇下降。
2.處理各種文本
從網(wǎng)上down一些文章,需要刪掉里面的空白行;沒有規(guī)則的大段數(shù)字,需要求和; 不同格式的頭文件轉(zhuǎn)換等等;
這個用perl處理更好,3年前我也是這樣作的,當(dāng)我使用Python遇到python之后,我就徹底放棄了perl了。perl很不錯,基本上同樣的功能,用python寫代碼會長一些,網(wǎng)絡(luò)社區(qū)提供的各種perl的功能包也多一些,但是Larry Wall 是一個詩人,詩人的氣質(zhì)讓perl的語法,在我們這些程序員眼里看起來很零亂。#t#
基本上2個星期不用,要拿perl干活,就得找本語法書重新看看。在linux下面還好,可以man一把,要是在windows上裝一個ActivePerl,想查幫助還得打開Perl Core Documentation這個html文件,一行一行的找,雖然腳本語言的幫助系統(tǒng)都不能
.Net,Java等商業(yè)開發(fā)工具的幫助相提并論,但是python好歹也有一個chm文件,可以index的。Perl是給真正的hacker用的, 簡潔,明快卻是python的優(yōu)點(diǎn)。要是作為一個專業(yè)的網(wǎng)管,選擇perl沒錯的,至于普通程序員的小玩具,python更好使。
3.做各種原型系統(tǒng),快速開發(fā)。
界面,網(wǎng)絡(luò),文本處理,圖像處理,科學(xué)計(jì)算。桌面程序,可以用wxpython庫,速度并不慢。python有很強(qiáng)的網(wǎng)絡(luò)編程能力,它的module都是c/c++寫的。
圖像處理,除了python自帶的PIL包,還可以用ImageMagic,這樣Gimp能夠做什么,python也能做什么,寫10來行程序,可以處理一大批圖片,這樣的快感不多了。3年前,我?guī)鸵籎J寫程序處理衛(wèi)星圖片,大概是把衛(wèi)星云圖切成32*32的正方形,依次計(jì)算闕值然后再統(tǒng)計(jì)。我用了一個星期的所有下午。
pure c,差不多1500行代碼,那個時(shí)候正在談戀愛,智商比較低,在windows上面,裝一個gcc,用editplus做編輯器,gdb+printf來調(diào)試,雖然***小有成就感,確很費(fèi)了很多功夫,程序的核心部分,如果用python來做,短短幾行就搞定。
- import socket, sys
- s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.connect((host, port))
- try:
- s.connect((host, port))
- s.send(.)
- except IOError:
- pass:
當(dāng)然如果使用Python做圖像處理算法研究,還是推薦用matlab,python的浮點(diǎn)運(yùn)算效率比較低,這是因?yàn)?FONT size=+0>python中的浮點(diǎn)數(shù)位數(shù)幾乎可以無限,類似Big Int的處理方法
【編輯推薦】