歡迎來到培訓(xùn)無(wú)憂網(wǎng)!
咨詢熱線 400-001-5729
2023-01-07 08:23:08|已瀏覽:1339次
python大數(shù)據(jù)入門技巧有哪些?為了提高模塊加載的速度,每個(gè)模塊都會(huì)在__pycache__文件夾中放置該模塊的預(yù)編譯模塊,命名為module.version.pyc,version是模塊的預(yù)編譯版本編碼,一般都包含Python的版本號(hào)。例如在CPython 發(fā)行版3.4中,fibo.py文件的預(yù)編譯文件就是:__pycache__/fibo.cpython-34.pyc。這種命名規(guī)則可以保證不同版本的模塊和不同版本的python編譯器的預(yù)編譯模塊可以共存。以下是小編為你整理的python大數(shù)據(jù)入門技巧
腳本在運(yùn)行之前會(huì)首先檢查python文件的最后編輯日期和預(yù)編譯模塊的編譯時(shí)間,從而決定是否需要重新編譯。預(yù)編譯模塊也是跨平臺(tái)的,所以不同的模塊是可以在不同的系統(tǒng)和不同的架構(gòu)之間共享的。
Python在兩種情況下不檢查緩存。第一種,從命令行中直接加載的模塊總是會(huì)重新編譯并且結(jié)果不保存。第二種,如果沒有源模塊,則不會(huì)檢查緩存。為了支持無(wú)源代碼的部署方式,應(yīng)該將預(yù)編譯模塊放在源代碼文件夾中而不是__pycache__中,并且不要包含源代碼模塊。
你可以使用-O和-OO參數(shù)來降低預(yù)編譯模塊的大小。-O開關(guān)會(huì)去除assert語(yǔ)句,-OO開關(guān)會(huì)去除assert語(yǔ)句和__doc__字符串。因?yàn)橛行┠K要依賴這些語(yǔ)句,因此只有當(dāng)你確認(rèn)模塊的內(nèi)容時(shí)才去使用這些開關(guān)。優(yōu)化模塊的后綴名是.pyo。
.pyo和.pyc文件的執(zhí)行速度不會(huì)比.py文件快,快的地方在于模塊加載的速度。compileall模塊可以用來把某個(gè)文件夾的中的所有文件都編譯成為.pyc或者.pyo文件。
lambdalambda通常是匿名函數(shù)的代名詞,我們用到lambda的時(shí)候就是創(chuàng)建一個(gè)匿名函數(shù):舉個(gè)簡(jiǎn)單的例子:x代表了輸入,x**2代表計(jì)算方法,也代表返回內(nèi)容,也就是說這個(gè)函數(shù)輸入一個(gè)數(shù),返回這個(gè)數(shù)的平方。但是因?yàn)檫@個(gè)函數(shù)沒有函數(shù)名,所以無(wú)法在其他地方調(diào)用
除非我們將這個(gè)函數(shù)起一個(gè)名字:但通常我們不會(huì)這么做,匿名函數(shù)只是作為匿名使用。
filter函數(shù)用法是:filter(fuction,list):將list中每一個(gè)元素帶入到function中,計(jì)算返回值,將返回值為True的list中的元素形成一個(gè)新的list,當(dāng)然也可以是tuple。
對(duì)于上面這個(gè)函數(shù),我們可以用lambda來簡(jiǎn)化:它的意思是,如果alist中的值的平方小于5,就返回這個(gè)值,形成一個(gè)新的list
注:尊重原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明出處和鏈接 http://m.dedgn.cn/news-id-76986.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無(wú)憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請(qǐng)自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請(qǐng)關(guān)注python培訓(xùn)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請(qǐng)?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050