天才教育網(wǎng)合作機構 > 培訓機構 >

                                                                                        天才領(lǐng)路者

                                                                                        歡迎您!
                                                                                        朋友圈

                                                                                        400-850-8622

                                                                                        全國統一學(xué)習專(zhuān)線(xiàn) 9:00-21:00

                                                                                        位置:培訓資訊 > 總算理解如何自學(xué)python開(kāi)發(fā)

                                                                                        總算理解如何自學(xué)python開(kāi)發(fā)

                                                                                        日期:2019-09-18 16:15:06     瀏覽:274    來(lái)源:天才領(lǐng)路者
                                                                                        核心提示:為了提高模塊加載的速度,每個(gè)模塊都會(huì )在__pycache__文件夾中放置該模塊的預編譯模塊,命名為module.version.pyc,version是模塊的預編譯版本編碼,一般都包含Python的版本號。例如在CPython發(fā)行版3.4中

                                                                                        為了提高模塊加載的速度,每個(gè)模塊都會(huì )在__pycache__文件夾中放置該模塊的預編譯模塊,命名為module.version.pyc,version是模塊的預編譯版本編碼,一般都包含Python的版本號。例如在CPython 發(fā)行版3.4中,fibo.py文件的預編譯文件就是:__pycache__/fibo.cpython-34.pyc。這種命名規則可以保證不同版本的模塊和不同版本的python編譯器的預編譯模塊可以共存。以下是小編為你整理的如何自學(xué)python開(kāi)發(fā) ?

                                                                                        腳本在運行之前會(huì )首先檢查python文件的*編輯日期和預編譯模塊的編譯時(shí)間,從而決定是否需要重新編譯。預編譯模塊也是跨平臺的,所以不同的模塊是可以在不同的系統和不同的架構之間共享的。 ?

                                                                                        Python在兩種情況下不檢查緩存。*種,從命令行中直接加載的模塊總是會(huì )重新編譯并且結果不保存。第二種,如果沒(méi)有源模塊,則不會(huì )檢查緩存。為了支持無(wú)源代碼的部署方式,應該將預編譯模塊放在源代碼文件夾中而不是__pycache__中,并且不要包含源代碼模塊。

                                                                                        如何自學(xué)python開(kāi)發(fā)

                                                                                        ?

                                                                                        你可以使用-O和-OO參數來(lái)降低預編譯模塊的大小。-O開(kāi)關(guān)會(huì )去除assert語(yǔ)句,-OO開(kāi)關(guān)會(huì )去除assert語(yǔ)句和__doc__字符串。因為有些模塊要依賴(lài)這些語(yǔ)句,因此只有當你確認模塊的內容時(shí)才去使用這些開(kāi)關(guān)。優(yōu)化模塊的后綴名是.pyo。 ?

                                                                                        .pyo和.pyc文件的執行速度不會(huì )比.py文件快,快的地方在于模塊加載的速度。compileall模塊可以用來(lái)把某個(gè)文件夾的中的所有文件都編譯成為.pyc或者.pyo文件。 ?

                                                                                        lambda

                                                                                        lambda通常是匿名函數的代名詞,我們用到lambda的時(shí)候就是創(chuàng )建一個(gè)匿名函數:舉個(gè)簡(jiǎn)單的例子:x代表了輸入,x**2代表計算方法,也代表返回內容,也就是說(shuō)這個(gè)函數輸入一個(gè)數,返回這個(gè)數的平方。但是因為這個(gè)函數沒(méi)有函數名,所以無(wú)法在其他地方調用 ?

                                                                                        除非我們將這個(gè)函數起一個(gè)名字:但通常我們不會(huì )這么做,匿名函數只是作為匿名使用。 ?

                                                                                        filter函數用法是:filter(fuction,list):將list中每一個(gè)元素帶入到function中,計算返回值,將返回值為T(mén)rue的list中的元素形成一個(gè)新的list,當然也可以是tuple。 ?

                                                                                        對于上面這個(gè)函數,我們可以用lambda來(lái)簡(jiǎn)化:它的意思是,如果alist中的值的平方小于5,就返回這個(gè)值,形成一個(gè)新的list ?

                                                                                        關(guān)于python

                                                                                        Python(英國發(fā)音:/?pa?θ?n/ 美國發(fā)音:/?pa?θɑ?n/), 是一種面向對象的解釋型計算機程序設計語(yǔ)言,由荷蘭人Guido van Rossum于1989年發(fā)明,*個(gè)公開(kāi)發(fā)行版發(fā)行于1991年。Python是純粹的自由軟件,源代碼和解釋器CPython遵循GPL(GNU General Public License)協(xié)議[1] 。Python語(yǔ)法簡(jiǎn)潔清晰,特色之一是強制用空白符(w作為語(yǔ)句縮進(jìn)。 ?

                                                                                        首先從Python官網(wǎng)(https://www.python.org/downloads/)下載Python安裝程序,本文以Python 3.5.2為例:

                                                                                        ?

                                                                                        web-based installer 需要通過(guò)聯(lián)網(wǎng)完成安裝2、executable installer 通過(guò)可執行文件(*.exe)方式安裝3、embeddable zip file 嵌入式版本,可以集成到其它應用中 ?

                                                                                        筆者開(kāi)發(fā)環(huán)境是Windows所以選擇紅框選中的版本,Mac用戶(hù)下載紅框標注的版本,下載完成后,找到相應的軟件包, ?

                                                                                        ?

                                                                                        如何用python下載電子書(shū)

                                                                                        這里下載biquge里面的一本電子書(shū),書(shū)名是《兩界搬運工》,代碼是17_17115。

                                                                                        之所以在這個(gè)網(wǎng)站下載,是因為這里的反爬措施不那么嚴厲,連續下載了一千二百七十七章,也沒(méi)有出現封鎖IP的現象。

                                                                                        找到目錄頁(yè),可以看到章節列表,而每一章都對應一個(gè)超鏈接。

                                                                                        用python讀取目錄頁(yè):

                                                                                        import requests as rt

                                                                                        import re

                                                                                        url = '……biquge.com.tw/17_17115/'

                                                                                        a = rt.get(url)

                                                                                        print(a)

                                                                                        如果返回,就說(shuō)明這個(gè)頁(yè)面讀取成功了。

                                                                                        查看頁(yè)面的headers,了解編碼格式:

                                                                                        a.headers

                                                                                        上面沒(méi)有明確指出編碼格式,嘗試使用gbk編碼:

                                                                                        a.encoding='gbk'

                                                                                        然后讀取目錄頁(yè)的源代碼:

                                                                                        b = a.text

                                                                                        用正則表達式來(lái)提取每一章的超鏈接:

                                                                                        c = re.findall('

                                                                                        ',b)

                                                                                        提取每一章的標題,需要匹配漢字字符串和空格:

                                                                                        d = re.findall('

                                                                                        ([u4e00-u9fa5 ]+)',b)

                                                                                        嘗試著(zhù)下載第二章的網(wǎng)頁(yè)源代碼:

                                                                                        p = '……biquge.com.tw'

                                                                                        u = rt.get(p+c[1])

                                                                                        u.encoding = 'gbk'

                                                                                        v = u.text

                                                                                        可以看到,網(wǎng)頁(yè)源代碼里面包含著(zhù)電子書(shū)的正文內容;

                                                                                        每一段的開(kāi)頭,是四個(gè)空格( )。

                                                                                        這樣,可以單獨把正文的內容拿出來(lái):

                                                                                        w = re.findall('( .*?)

                                                                                        ',v)

                                                                                        但是,我們可以發(fā)現,段落開(kāi)頭的空格仍舊是 ,這樣看著(zhù)很難受是不是?因此,可以用' '替換

                                                                                        替換的方法是re.sub:

                                                                                        for j in w:

                                                                                        j = re.sub(' ',' ',j)

                                                                                        print(j)

                                                                                        這個(gè)函數的具體用法,可以參考《python里面re.sub()函數的使用方法》。

                                                                                        如果本頁(yè)不是您要找的課程,您也可以百度查找一下:

                                                                                        奇米在线7777在线精品|国产成人精品免费视|精品无码不卡一区二区三区|国内综合精品午夜久久资源|亚洲视频在线观看..