第10章 第三方庫_第1頁
第10章 第三方庫_第2頁
第10章 第三方庫_第3頁
第10章 第三方庫_第4頁
第10章 第三方庫_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

老師:李挺第十章第三方庫第三方庫第三方庫縱覽網(wǎng)絡爬蟲: requests、scrapy數(shù)據(jù)分析: numpy、scipy、pandas文本處理: pdfminer、openpyxl、python-docx、beautifulsoup4數(shù)據(jù)可視化: matplotlib、TVTK、mayavi用戶圖形界面: PyQt5、wxPython、PyGTK機器學習: scikit-learn、TensorFlow、TheanoWeb開發(fā): Django、Pyramid、Flask游戲開發(fā): Pygame、Panda3D、cocos2d更多第三方庫: PIL、SymPy、NLTK、WeRoBot、MyQR?網(wǎng)絡爬蟲網(wǎng)絡爬蟲是自動進行HTTP訪問并捕獲HTML頁面的程序。?requests庫是一個簡潔且簡單的處理HTTP請求的第三方庫。優(yōu)點:程序編寫過程更接近正常URL訪問過程。該庫建立在urllib3庫基礎上。?scrapy庫是Python開發(fā)的一個快速的、高層次的web獲取框架。不同于簡單的網(wǎng)絡爬蟲功能,scrapy框架本身包含了成熟網(wǎng)絡爬蟲系統(tǒng)所應該具有的部分共用功能,它是一個半成品,任何人都可以根據(jù)需求方便地利用框架已有功能經(jīng)過簡單擴展實現(xiàn)專業(yè)的網(wǎng)絡爬蟲系統(tǒng)。?數(shù)據(jù)分析?numpy是一種開源數(shù)值計算擴展第三方庫用于處理數(shù)據(jù)類型相同的多維數(shù)組,可以用來存儲和處理大型矩陣,比Python語言提供的列表結(jié)果要高效得多。?scipy是一款方便、易用、專為科學和工程設計的Python工具包,它是在numpy庫的基礎上增加了眾多的數(shù)學、科學以及工程計算中常用的庫函數(shù)。?pandaspandas是基于numpy擴展的一個重要第三方庫,pandas最初被作為金融數(shù)據(jù)分析工具而開發(fā)。?文本處理?beautifulsoup4?pdfminer?openpyxl?python-docx是一個可以從PDF文檔中提取各類信息的第三方庫,能夠完全獲取并分析PDF的文本數(shù)據(jù),并且獲取PDF中文本的準確位置、字體、行數(shù)等信息。是一個處理Excel文檔的Python第三方庫。是一個處理word文檔的Python第三方庫用于解析HTML和XML。?數(shù)據(jù)可視化?matplotlib?TVTK?mayavi數(shù)據(jù)可視化是指根據(jù)數(shù)據(jù)特點將其展示為易于理解的圖形的過程。主要進行二維圖標數(shù)據(jù)展示,廣泛用于科學計算的數(shù)據(jù)可視化。是一個開源、跨平臺、支持平行處理的圖形應用函數(shù)庫,它是專業(yè)可編程的三維可視化工具在VTK基礎之上開發(fā)的,可以更為方便開發(fā)實用的三維可視化工具。?用戶圖形界面?PyQt5?wxPython?PyGTKPython標準庫內(nèi)置了一個GUI庫(Tkinter),但過于陳舊,開發(fā)控件也很有限。它有超過620個類和近6000個函數(shù)和方法。它是Python中最為成熟的商業(yè)級第三方庫,可以在windows、Linux和MacOSX等操作系統(tǒng)上跨平臺使用可以輕松地創(chuàng)建健壯可靠、功能強大的圖形用戶界面。PyGTK具有跨平臺性,利用它編寫的代碼能夠不加修改地穩(wěn)定運行在各操作系統(tǒng)中。?機器學習?scikit-learn(sklearn)?TensorFlow?Theano機器學習是人工智能領域的一個重要分支,Python也是機器學習和人工智能的重要基礎語言。是一個簡單高效的數(shù)據(jù)挖掘和數(shù)據(jù)分析工具,基于numpy、scipy和matplotlib庫構(gòu)建,專門針對機器學習應用而發(fā)展起來的一款開源框架,基本功能包括:分類、回歸、聚類、數(shù)據(jù)降維、模型選擇和數(shù)據(jù)預處理。是谷歌基于DistBelief進行研發(fā)的第二代人工智能學習系統(tǒng),也是用來支撐AlphaGo系統(tǒng)的后臺框架。應用十分廣泛,從語音識別或圖像識別到機器翻譯或自動跟蹤等,既可以運行在萬臺服務器的數(shù)據(jù)中心,也可以運行在智能手機或嵌入式設備中。為執(zhí)行深度學習中大規(guī)模神經(jīng)網(wǎng)絡算法的運算而設計,擅長處理多維數(shù)組,偏向底層開發(fā)。?Web開發(fā)?Django?Pyramid?FlaskDjango是Python生態(tài)中最流行的開源Web應用框架。提供了開發(fā)網(wǎng)站經(jīng)常用到的模塊,Django的開發(fā)理念鼓勵快速開發(fā),減少程序員建立一個高性能web應用所花費的時間和精力,形成一站式解決方案。是一個通用、開源的PythonWeb應用程序開發(fā)框架,讓Python開發(fā)者更簡單地創(chuàng)建Web應用。相比Django是一個小巧、快速、靈活的開源PythonWeb框架。是輕量級Web應用框架,相比Django和Pyramid,它也被稱為微框架。使用Flask開發(fā)Web應用十分方便,甚至幾行代碼即可建立一個小型網(wǎng)站。?游戲開發(fā)?Pygame?Panda3D?cocos2d是面向游戲開發(fā)入門的第三方庫,除了制作游戲外,還用于制作多媒體應用程序。是一個開源、跨平臺的3D渲染和游戲開發(fā)庫,簡單說,它是一個3D游戲引擎,支持Python和C++兩種語言。是一個構(gòu)建2D游戲和圖形界面交互式應用的框架,能夠利用GPU進行加速。pipinstallPygamepipinstallPanda3Dpipinstallcocos2d?更多第三方庫?PIL?SymPy?NLTK?WeRoBot?MyQRPython語言有十幾萬個第三方庫,覆蓋信息技術(shù)幾乎所有領域。即使在每個方向,也會有大量的專業(yè)人員開發(fā)多個第三方庫來給出具體設計。是圖像處理方面的重要第三方庫,支持圖像存儲、處理和顯示,能夠處理幾乎所有的圖片格式,可以完成對圖像的縮放、剪裁、疊加以及向圖像添加線條、圖像和文字等操作。是一個符號計算的庫,是一個全功能的計算機代數(shù)系統(tǒng)。代碼簡潔、易于理解,支持符號計算、高精度計算、模式匹配、繪制、解方程、微積分、組合數(shù)學、離散數(shù)學、幾何學、概率與統(tǒng)計、物理學等領域的計算和應用。自然語言處理庫,支持多種語言,尤其對中文支持良好,可以進行預料處理、文本統(tǒng)計、內(nèi)容理解、情感分析等多種應用。是一個微信公眾號開發(fā)框架,可以解析微信服務器發(fā)來的消息,并將消息轉(zhuǎn)換成Message或者Event類型。是一個能夠產(chǎn)生基本二維碼、藝術(shù)二維碼和動態(tài)效果二維碼的Python第三方庫。第三方庫的安裝查看pip是否安裝:在命令提示符(CMD)中輸入pippip是一個現(xiàn)代的,通用的Python包管理工具。提供了對Python包的查找、下載、安裝、卸載的功能。第三方庫安裝的方法安裝包管理工具:easy_install、pip(√)源文件安裝win7打開命令提示符安裝一個庫的命令格式:pipinstall<擬安裝庫名> 卸載一個已經(jīng)安裝第三方庫的命令格式:pipuninstall<擬卸載庫名> 列出當前系統(tǒng)已經(jīng)安裝第三方庫的命令格式:piplist列出某個已經(jīng)安裝庫詳細信息的命令格式:pipshow<擬查詢庫名> Pycharm安裝第三方庫新建一個項目時,項目解釋器如果選擇不同,需要重新安裝第三方庫/simple/清華大學鏡像/simple/豆瓣鏡像/pypi/simple/阿里鏡像第三方庫默認下載地址為:/simple國外服務器地址下載可能會比較慢如果下載慢,可以選擇國內(nèi)鏡像地址:選擇已經(jīng)存在的解釋器,就可以不用重新安裝創(chuàng)建一個虛擬的python環(huán)境。這里所有的類庫依賴都可以直接脫離系統(tǒng)安裝的python獨立運行。關聯(lián)已經(jīng)存在的python解釋器優(yōu)點:?python項目可以獨立部署?防止一臺服務器部署多個項目之間存在類庫的版本依賴問題發(fā)生?充分發(fā)揮項目的靈活性由于中文文本中的單詞不是通過空格或者標點符號分割,中文及類似語言存在一個重要的“分詞”問題。利用一個中文詞庫,將待分的內(nèi)容與分詞詞庫進行比對,通過圖結(jié)構(gòu)和動態(tài)規(guī)劃方法找到最大概率的詞組。除了分詞,jieba還提供增加自定義中文單詞的功能01jieba庫概述分詞原理三種分詞模式精確模式將句子最精確地切開,適合文本分析;搜索引擎模式在精確模式基礎上,對長詞再次切分,提高召回率,適合用于搜索引擎分詞全模式把句子中所有可以成詞的詞語都掃描出來,速度非??欤遣荒芙鉀Q歧義jieba.lcut(s)jieba.lcut(s,cut_all=True)jieba.lcut_for_search(s)以詞語為基本單元,根據(jù)其在文本中出現(xiàn)的頻率設計不同大小以形成視覺上不同效果,形成“關鍵詞云層”或“關鍵詞渲染”,從而使讀者只要“一瞥”即可領略文本的主旨。在生成詞云時,wordcloud默認會以空格或標點為分隔符對目標文本進行分詞處理。對于中文文本,分詞處理需要由用戶來完成。一般步驟是先將文本分詞處理,然后以空格拼接,再調(diào)用wordcloud庫函數(shù)。wordcloud庫的核心是WordCloud類,所有的功能都封裝在WordCloud類中。使用時需要實例化一個WordColoud類的對象,并調(diào)用其generate(text)方法將text文本轉(zhuǎn)化為詞云。02wordcloud庫概述什么是詞云詞云的原理核心函數(shù)參數(shù)功能font_path指定字體文件的完整路徑,默認Nonewidth生成圖片寬度,默認400像素height生成圖片高度,默認200像素mask詞云形狀,默認None,即,方形圖min_font_size詞云中最小的字體字號,默認4號font_step字號步進間隔,默認1min_font_size詞云中最大的字體字號,默認None,根據(jù)高度自動調(diào)節(jié)max_words詞云圖中最大詞數(shù),默認200stopwords被排除詞列表,排除詞不在詞云中顯示background_color圖片背景顏色,默認黑色WordCloud對象創(chuàng)建的常用參數(shù)generate(text):

由text文本生成詞云to_file(filename):將詞云圖保存為名為filename的文件WordCloud類的常用方法PyQt5是一個用于創(chuàng)建GUI應用程序的跨平臺的工具包。GUI:圖形用戶界面用戶軟件界面淘寶服務器支付寶服務器銀行服務器PyQt5是由一系列Python模塊組成。超過620個類,6000函數(shù)和方法。能在諸如Unix、Windows和MacOS等主流操作系統(tǒng)上運行?!敦敻弧啡?00強企業(yè)中的前10家企業(yè),有8家在使用Qt開發(fā)軟件。03什么是PyQt5能夠在Windows、Linux、MacOSX等操作系統(tǒng)下將Python源文件打包,變成直接可運行的可執(zhí)行文件。通過對源文件打包,Python程序可以在沒有安裝Python的環(huán)境中運行,也可以作為一個獨立文件方便傳遞和管理。PyInstaller<Python源程序文件名>執(zhí)行完畢后,源文件所在目錄將生成dist和build兩個文件夾。最終的打包程序在dist內(nèi)部與源文件同名的目錄中。PyInstaller庫概述04Pyin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論