小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

適合Python 新手的5大練手項(xiàng)目,你練了么?

 習(xí)悟齋 2018-06-04

適合Python 新手的5大練手項(xiàng)目,你練了么?

已經(jīng)學(xué)習(xí)了一段時(shí)間的Python,如果你看過(guò)之前W3Cschool的文章,就知道是時(shí)候該進(jìn)去【項(xiàng)目】階段了。

但是在練手項(xiàng)目的選擇上,還存在疑問(wèn)?不知道要從哪種項(xiàng)目先下手?

W3Cschool首先有兩點(diǎn)建議:

  • 最好不要寫(xiě)太應(yīng)用的程序練手,要思考什么更像是知識(shí),老只會(huì)寫(xiě)寫(xiě)爬蟲(chóng)是無(wú)用的,但是完全不寫(xiě)也不行。

  • 對(duì)于練手的程序,要注意簡(jiǎn)化和抽象,但是如果簡(jiǎn)化不得當(dāng)?shù)脑?,很容易看幾篇教程就被懶得下手了?/p>

接下來(lái)就給大家介紹幾種適合新手的練手項(xiàng)目。


0.算法系列-排序與查找

適合Python 新手的5大練手項(xiàng)目,你練了么?

Python寫(xiě)swap很方便,就一句話(a, b = b, a),于是寫(xiě)基于比較的排序能短小精悍。剛上手一門(mén)新語(yǔ)言練算法最合適不過(guò)了,還能順便刷題,利于找工作。簡(jiǎn)單的練習(xí),讓你受益無(wú)窮。

1.編譯系列

適合Python 新手的5大練手項(xiàng)目,你練了么?

這個(gè)系列的重點(diǎn)就是前面說(shuō)到的簡(jiǎn)化,但是不要指望一口氣寫(xiě)一個(gè)完整的C編譯器,即使只針對(duì)C一個(gè)很小的子集。所以我們需要一步一步來(lái),寫(xiě)一個(gè)計(jì)算器的解釋器是很好的開(kāi)始,再進(jìn)一步可以寫(xiě)一個(gè)極簡(jiǎn)語(yǔ)言的解釋器,譬如brainfuck。

再進(jìn)一步你可以擴(kuò)展已有的計(jì)算器解釋器,譬如加入聲明、賦值與運(yùn)算、循環(huán)、流程控制, 構(gòu)成一個(gè)簡(jiǎn)單的LL(1)語(yǔ)法,然后遞歸下降分析,這就可以搞一個(gè)簡(jiǎn)易同時(shí)又圖靈完備的玩具語(yǔ)言出來(lái)了。

2.分布式系統(tǒng)/計(jì)網(wǎng)系列

適合Python 新手的5大練手項(xiàng)目,你練了么?

這系列的項(xiàng)目,第一步可以從寫(xiě)一個(gè)簡(jiǎn)單的HTTP客戶端開(kāi)始,原因很簡(jiǎn)單,因?yàn)镠TTP大概是最簡(jiǎn)單的應(yīng)用層協(xié)議了。然后可以考慮實(shí)現(xiàn)一個(gè)基本的ssh,你大概每天都會(huì)用ssh,難道不想做一個(gè)自己的簡(jiǎn)易版本嗎?

然后可以考慮分布式系統(tǒng)課上的經(jīng)典作業(yè),譬如寫(xiě)一個(gè)簡(jiǎn)單的RPC??梢詤⒖糐ava的RPC原理以及Google的RPC框架(有Python版)。

3.操作系統(tǒng)系列

適合Python 新手的5大練手項(xiàng)目,你練了么?

操作系統(tǒng)系列,可以嘗試寫(xiě)一個(gè)簡(jiǎn)單的存儲(chǔ)管理的文件系統(tǒng)。第一步的簡(jiǎn)化就是用一個(gè)大的空文件作為磁盤(pán),把對(duì)磁盤(pán)的讀寫(xiě)抽象成對(duì)這個(gè)文件的讀寫(xiě)。基本就是實(shí)現(xiàn)下inode,然后包裝成一個(gè)shell,支持下最基本的命令,新建、追加、讀寫(xiě)、刪除之類(lèi)的操作。這個(gè)練習(xí)最有趣也最有意義的地方在于多級(jí)索引的實(shí)現(xiàn),

4.周邊系列

適合Python 新手的5大練手項(xiàng)目,你練了么?

你也可以試試Jython,IronPython之類(lèi)的,看看和CPython比如何。然后再試試Pypy,必然是一開(kāi)始很高興,最后發(fā)現(xiàn)各種常見(jiàn)庫(kù)不支持,最后還是轉(zhuǎn)回CPython。

做實(shí)驗(yàn)的話用IPython把Python函數(shù)當(dāng)命令跑很方便。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多