為了提高模塊加載的速度,每個模塊都會在__pycache__文件夾中放置該模塊的預編譯模塊,命名為module.version.pyc,version是模塊的預編譯版本編碼,一般都包含Python的版本號。例如在CPython 發行版3.4中,fibo.py文件的預編譯文件就是:__pycache__/fibo.cpython-34.pyc。這種命名規則可以保證不同版本的模塊和不同版本的python編譯器的預編譯模塊可以共存。以下是小編為你整理的python要學習什么 ?
腳本在運行之前會首先檢查python文件的*編輯日期和預編譯模塊的編譯時間,從而決定是否需要重新編譯。預編譯模塊也是跨平臺的,所以不同的模塊是可以在不同的系統和不同的架構之間共享的。 ?
Python在兩種情況下不檢查緩存。*種,從命令行中直接加載的模塊總是會重新編譯并且結果不保存。第二種,如果沒有源模塊,則不會檢查緩存。為了支持無源代碼的部署方式,應該將預編譯模塊放在源代碼文件夾中而不是__pycache__中,并且不要包含源代碼模塊。
你可以使用-O和-OO參數來降低預編譯模塊的大小。-O開關會去除assert語句,-OO開關會去除assert語句和__doc__字符串。因為有些模塊要依賴這些語句,因此只有當你確認模塊的內容時才去使用這些開關。優化模塊的后綴名是.pyo。 ?
.pyo和.pyc文件的執行速度不會比.py文件快,快的地方在于模塊加載的速度。compileall模塊可以用來把某個文件夾的中的所有文件都編譯成為.pyc或者.pyo文件。 ?
lambdalambda通常是匿名函數的代名詞,我們用到lambda的時候就是創建一個匿名函數:舉個簡單的例子:x代表了輸入,x**2代表計算方法,也代表返回內容,也就是說這個函數輸入一個數,返回這個數的平方。但是因為這個函數沒有函數名,所以無法在其他地方調用 ?
除非我們將這個函數起一個名字:但通常我們不會這么做,匿名函數只是作為匿名使用。 ?
filter函數用法是:filter(fuction,list):將list中每一個元素帶入到function中,計算返回值,將返回值為True的list中的元素形成一個新的list,當然也可以是tuple。 ?
對于上面這個函數,我們可以用lambda來簡化:它的意思是,如果alist中的值的平方小于5,就返回這個值,形成一個新的list ?
關于python
Python(英國發音:/?pa?θ?n/ 美國發音:/?pa?θɑ?n/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum于1989年發明,*個公開發行版發行于1991年。Python是純粹的自由軟件,源代碼和解釋器CPython遵循GPL(GNU General Public License)協議[1] 。Python語法簡潔清晰,特色之一是強制用空白符(w作為語句縮進。 ?
首先從Python官網(https://www.python.org/downloads/)下載Python安裝程序,本文以Python 3.5.2為例:
?
web-based installer 需要通過聯網完成安裝2、executable installer 通過可執行文件(*.exe)方式安裝3、embeddable zip file 嵌入式版本,可以集成到其它應用中 ?
筆者開發環境是Windows所以選擇紅框選中的版本,Mac用戶下載紅框標注的版本,下載完成后,找到相應的軟件包, ?
給編程初學者的建議
在你的編程生涯中有一個技能比其他更重要。它就是,高效學習的能力。如果你掌握了這個本領,必將前程似錦,而且受到他人的敬仰。如John Sonmez所說, 至少有5種我們犯的錯誤會影響高效學習。接下來我們就來一一大致了解下。 ?
首先,一本書從頭看到底,一頁不漏: 這樣不好因為我們只會記住我們讀過的一小部分而且大部分書內容太寬泛以至于不值得一頁不漏地讀。當你剛開始學習時,學一些不會馬上用的概念是時間和精力的極大浪費。可以花時間那樣做,但不是剛開始的時候。 相反,你應該把精力放在當前需要學習的部分,而忽略其他部分。 ?
其次,沒有計劃地學習: 這方面我是一個慣犯。有時候我會因為一個新技術而變得很興奮,接著馬上投入進去,開始使用它,買很多書,讀,讀,讀,用,用,用, 看一些相關的視頻,訂閱一些博客和新聞通訊,讀的更多,用的更多 ,*我還是原地打轉,沒有什么大的進步。這是非常糟糕的。 ?
再次就是未能縮小范圍: 有清晰的界限能讓我們容易決定一個新的資源是否值得你花時間。 這就是為什么學習Python的*的途徑是試著用它開發些東西。為了完成一個任務,你會明白Python哪些部分是你不需要了解的,你會發現開始你把范圍縮的越小,學到的就越多而且進步越快。 ?
然后就是試著同時學兩樣(或更多)的東西:如果你是因為對Django 網頁應用開發感興趣而學習Python,那么很可能你在犯這個錯誤。你這里學點Python,那里學點Django,再學點Python,然后再學點Django。 本質上你就是我們特立尼達人喜歡說的“陀羅泥”,即轉動了很多次,但是實際上沒前進。