python第三方庫位置
㈠ 學一學!python第三方庫的安裝方法總結
Python 是一門優雅的語言,簡潔的語法,強大的功能。當然豐富的第三方庫,更能加速開發。那麼問題來了,如何安裝這些第三方庫(包)呢?
安裝第三方庫的方式其實不多。下面就介紹一些技巧。
源碼安裝
很多第三方庫都是開源的,幾乎都可以在github 或者 pypi上找到源碼。找到源碼格式大概都是 zip 、 tar.zip、 tar.bz2格式的壓縮包。解壓這些包,進入解壓好的文件夾,通常會看見一個 setup.py 的文件。打開命令行,進入該文件夾。運行
?
1
python setup.py
install
這個命令,就能把這個第三庫安裝到系統里,也就是你的 Python 路徑,windows大概是在 C:Python2.7Libsite-packages。
linux會在 /usr/local/lib/python2.7/dist-packages。
Mac 應該在 /Library/Python/2.7/site-packages。如果是在 virtulenv環境下安裝,這個包就被安裝在所建立的虛擬環境下的 site-packages/目錄下。想要卸載這些庫也很簡單,進入 site-packages,直接刪掉庫文件就 OK 啦。當然,這些安裝可能有一點麻煩,需要下載,解壓,再運行安裝,卸載也不是很方便。有沒有一種工具,可以幫外面管理這些庫呢?
包管理器 (pip 和 easy_install)
現在很多編程語言,都帶有包管理器,例如 Ruby 的 gem,nodejs的npm。Python當然也不例外,擁有大名鼎鼎的 pip和 easy_install。
前面說到的pypi就是一些 python第三庫所在的源,使用 pip 或者 easy_install 安裝模塊,會搜索這個源,然後自動下載安裝。比如我們需要安裝 flask 框架具體命令如下:
?
1
pip
install
flask
或者
?
1
easy_install flask
簡單吧,一個簡單的命令就搞定。卸載也很方便,例如我們需要卸載flask
?
1
pip uninstall flask
查看所安裝的包,包括系統自帶的和手動安裝的
?
1
pip list
還可以搜索包
?
1
pip search flask
還可以重定向輸出項目使用的庫。
?
1
pip freeze
requirements.txt
這樣就會把該環境下的第三方庫重定向到 requirements.txt文件內,如果給別人安裝項目的依賴,只需要運行:
?
1
pip
install
-r requirements.txt
很方便吧。當然,有時候,我們的網路並不是那麼順暢,pip是在線安裝的,可不戚賀可以離線呢?當然可以啦,pip install 的第一步,就是在 pypi 上尋找包,然後下載到本地。如果網路不好,可以先高襪派建一個本地的倉庫,把常用的包離線下載。比如可以下載 flask 的源碼
?
1
pip intall flask-master.zip
同樣也可以安裝。
虛擬環境相關安裝
當然,上面介紹的,其實也是很普通很常見的方式,也算不上什麼技巧。下面介紹的,則是一些需要了解原理和解決非常規問題的技巧。
使用Python,我們會喜歡用 virtualenv建立虛擬環境,例如建立一個 venv的虛擬環境。我們只需要 source進去就可以使用pip安裝了。可是有時候,即使在虛擬環境下,使用了sudo的前綴(windows忽略),那麼安裝的庫不是在虛擬環境,而是被安裝到系統下的site-package 目錄下了。
windows的用戶可能會很開心,不需要注意這個問題。當然 windows 也同樣有著自己的問題。在 windows上安裝python,一般是編譯好的二進制包exe可執行文件。通常有 32位和64位的python。對於第三方庫,本來32和64不會有太大的差別。但是對於一些C寫的python庫,如mysqldb,PIL, pillow,會發現使用 pip或者 easy_install 的方式會好滲報錯:
?
1
Fixing python error: Unable to find vcvarsall.bat
原因大概是 windows上缺少一些 C編譯器東東。源碼需要編譯一下才能安裝,此時 windows就很苦逼了。當然,有一些好心人,幫您把常用的一些庫編譯成 exe 可執行文件,放到了這個站點。你只需要尋找對於版本的,下載一鍵安裝。
可是,還有一個問題,下載 exe 文件,運行安裝,這個庫是被安裝到了系統的 site-package 目錄下,如果我在windows 建立了venv虛擬環境,這樣安裝不是歇菜了么?
別擔心,這個文章的真正技巧,就是為了解決這個問題的。我們來安裝64位的 mysqldb。先下載 MySQLpython1.2.5.winamd64py2.7.exe 在 windows 上,用命令行進入虛擬環境 venv。然後運行
?
1
easy_install MySQLpython1.2.5.winamd64py2.7.exe
完美解決,在 venv 虛擬環境,將mysqldb 庫安裝到了venv下。
有了上面三個方式,幾乎涵蓋 python 所有平台的第三方庫安裝。不過話說回來,盡管 Python 是跨平台,開發環境,還是盡量使用 Linux或者MacOS,這兩個系統有更好的工具以及省去很多莫名其妙的問題。
㈡ python第三方庫——xlwt3
我們之前已經學習了xlrd這個庫,這個庫是讀取excel表格內信息的,它並不能寫入信息,這時候我們需要使用xlwt3這個庫進行excel表格的寫入。
打開命令提示符,使用pip進行安裝
安裝完後進入下一步:
這個xlwt3的庫,好像已經很久沒有人維護了,所以有一個問題就是,你用pip安裝的這個庫,是有點問題的,需要咱們手動修改。
打開python的安裝目錄,就是你的python的安裝位置,我的在D盤,找到D:\Python34\Lib\site-packages\xlwt3\formula.py這個文件,右鍵點擊,使用IDLE打開
將其中的
修改為
就是把第一個" __init__ "刪掉。
打開python shell
使用 import xlwt3 ,看看報不報錯,沒有報錯說明修改成功。安裝完成。
我們使用這個包主要是為了生成excel表格,將我們處理好的數據存到excel表格中。
為此,我們需要的是xlwt3裡面的Workbook這個類。
先創建實例:
這樣就創建完了一個實例。
我們知道,一個.xlsx文件或.xls文件稱為一個工作簿,裡面有好幾張工作表,我們現在創建的這個Workbook()實例,它兄氏也是一個工作簿,我們要寫入內容的話是要寫進工作表裡面的,這就需要我們創建一個工作表,工作表名是'test1'。
使用的是Workbook下屬的add_sheet方法,add_sheet,新建工作表。
add_sheet(self, sheetname, cell_overwrite_ok=False)
需要注意的是,這個方法有兩個參數
· 第一個是sheetname,這個是工作表的名字,必須要設置的
· 另一個參數是cell_overwrite_ok,這個參數是覆寫的意思,默認是False,如果你現在要寫的單元格裡面,已經有內容了,就不能寫了,如果你要是寫的話會報錯的。當然,我們在使用的時候,最好是設置成True。也就是上面的那個寫法。這樣對同一個單元格寫入兩次的話就不會報錯了,當然,只會保留最後一次寫入的值。
接下來可以寫入信息了。
事實上,我們剛才使用add_sheet這個方法後,創建出了一個Worksheet類的實例。這個類有兩個方法是我們需要使用的,一個是write,另一個是write_merge。前者用來寫入一個單元格的內容,後者用來寫入一個合並單元格的內容。
我們先看write方法,裡面有四個參數,分別是r,c,label,style,
· r是行
· c是滑塵悉列
· label是內容
· style是格式
上面寫的 table.write(1,0,'number') 是在第二行的第一列寫入'number'這個字元串。
同理,另外兩句分別是在第二行的第二列和第二行的第三列寫入'name'和'score'這兩個字元串。
write_merge是寫合並單元格的方法
· r1是最上面的單元格所在的行數
· r2是最下面的單元格所在的行數
· c1是最左面的單元格所在的列數
· c2是最右面的單元格所在的列數
· label是要寫入的內容
· style是格信乎式
上面那個 table.write_merge(0,0,0,2,'Student information') ,是把第0行的第一列,第二列,第三列的單元格合並了,在裡面寫入'Student information'這個字元串。
如果我們寫入信息的時候,不加style這個參數,那麼裡面的信息就是最普通的,沒有什麼格式,顏色啊,粗體啊,邊框啊,什麼的。
在xlwt3中,使用easyxf這個函數來設置單元格屬性。
比如這句當中,我們可以看到傳入了一個字元串作為參數:
'font: bold on, italic on, name 宋體, height 400, color red; align: vert centre, horiz centre; borders: top THIN,left THIN,right THIN,bottom THIN'
分解來看,這個字元串有三部分:
我們剛才不是用
創建了一個單元格屬性嗎,紅色20號宋體,粗體,斜體,四周有邊框,居中。
寫入的使用加在作為style參數傳入。
這樣,我們就成功的設置單元格格式了。
接下來我們設置列寬。
使用這個方法就能設置列寬了,裡面的0代表第一列,列寬是20。我也不知道這個列寬是怎麼換算的,只要設置5293的話就是20,大家可以根據換算設置自己想要的列寬。
最後一步,保存我們建立的工作簿。
這裡面就一個參數,你要保存的excel表格的文件名。需要加路徑和後綴名的。需要注意的是,這個xlwt3隻能保存成.xls的excel文件。
打開我們保存的excel表格。
可以看到,工作表名是我們設置的test1,第一行的前三個單元格合並了,內容是'Student information',紅色20號宋體,粗體,斜體,四周有邊框,居中。第二行分別是number,name,score。
以上就是創建這個excel表格的流程。
剛才上pypi發現,這個包好像就要被移除了,這樣的話以後用pip就無法安裝了。
xlwt3 0.1.2 : Python Package Index
以上就是關於xlwt3這個包的簡單教程。
㈢ Python 常用的標准庫以及第三方庫有哪些
Python常用庫大全,看看有沒有你需要的。
環境管理
管理 Python 版本和環境的工具
p – 非常簡單的互動式 python 版本管理工具。
pyenv – 簡單的 Python 版本管理工具。
Vex – 可以在虛擬環境中執行命令。
virtualenv – 創建獨立 Python 環境的工具。
virtualenvwrapper- virtualenv 的一組擴展。
包管理
管理包和依賴的工具。
pip – Python 包和依賴關系管理工具。
pip-tools – 保證 Python 包依賴關系更新的一組工具。
conda – 跨平台,Python 二進制包管理工具。
Curdling – 管理 Python 包的命令行工具。
wheel – Python 分發的新標准,意在取代 eggs。
包倉庫
本地 PyPI 倉庫服務和代理。
warehouse – 下一代 PyPI。
Warehousebandersnatch – PyPA 提供的 PyPI 鏡像工具。
devpi – PyPI 服務和打包/測試/分發工具。
localshop – 本地 PyPI 服務(自定義包並且自動對 PyPI 鏡像)。
分發
打包為可執行文件以便分發。
PyInstaller – 將 Python 程序轉換成獨立的執行文件(跨平台)。
dh-virtualenv – 構建並將 virtualenv 虛擬環境作為一個 Debian 包來發布。
Nuitka – 將腳本、模塊、包編譯成可執行文件或擴展模塊。
py2app – 將 Python 腳本變為獨立軟體包(Mac OS X)。
py2exe – 將 Python 腳本變為獨立軟體包(Windows)。
pynsist – 一個用來創建 Windows 安裝程序的工具,可以在安裝程序中打包 Python本身。
構建工具
將源碼編譯成軟體。
buildout – 一個構建系統,從多個組件來創建,組裝和部署應用。
BitBake – 針對嵌入式 Linux 的類似 make 的構建工具。
fabricate – 對任何語言自動找到依賴關系的構建工具。
PlatformIO – 多平台命令行構建工具。
PyBuilder – 純 Python 實現的持續化構建工具。
SCons – 軟體構建工具。
互動式解析器
互動式 Python 解析器。
IPython – 功能豐富的工具,非常有效的使用互動式 Python。
bpython- 界面豐富的 Python 解析器。
ptpython – 高級互動式Python解析器, 構建於python-prompt-toolkit 之上。
文件
文件管理和 MIME(多用途的網際郵件擴充協議)類型檢測。
imghdr – (Python 標准庫)檢測圖片類型。
mimetypes – (Python 標准庫)將文件名映射為 MIME 類型。
path.py – 對 os.path 進行封裝的模塊。
pathlib – (Python3.4+ 標准庫)跨平台的、面向對象的路徑操作庫。
python-magic- 文件類型檢測的第三方庫 libmagic 的 Python 介面。
Unipath- 用面向對象的方式操作文件和目錄
watchdog – 管理文件系統事件的 API 和 shell 工具
日期和時間
操作日期和時間的類庫。
arrow- 更好的 Python 日期時間操作類庫。
Chronyk – Python 3 的類庫,用於解析手寫格式的時間和日期。
dateutil – Python datetime 模塊的擴展。
delorean- 解決 Python 中有關日期處理的棘手問題的庫。
moment – 一個用來處理時間和日期的Python庫。靈感來自於Moment.js。
PyTime – 一個簡單易用的Python模塊,用於通過字元串來操作日期/時間。
pytz – 現代以及歷史版本的世界時區定義。將時區資料庫引入Python。
when.py – 提供用戶友好的函數來幫助用戶進行常用的日期和時間操作。
文本處理
用於解析和操作文本的庫。
通用
chardet – 字元編碼檢測器,兼容 Python2 和 Python3。
difflib – (Python 標准庫)幫助我們進行差異化比較。
ftfy – 讓Unicode文本更完整更連貫。
fuzzywuzzy – 模糊字元串匹配。
Levenshtein – 快速計算編輯距離以及字元串的相似度。
pangu.py – 在中日韓語字元和數字字母之間添加空格。
pyfiglet -figlet 的 Python實現。
shortuuid – 一個生成器庫,用以生成簡潔的,明白的,URL 安全的 UUID。
unidecode – Unicode 文本的 ASCII 轉換形式 。
uniout – 列印可讀的字元,而不是轉義的字元串。
xpinyin – 一個用於把漢字轉換為拼音的庫。
㈣ 如何查看Python3安裝及第三方庫路徑
有時候,我們想要查找Python安裝路徑及第三方庫的存放路徑,但可能忘記了當初安裝時的具體路徑,這個時候我們就可以通過命令快速找到這些路徑。
在 Linux & Mac 下,我們查到的很可能是軟鏈接形式,它並不是安裝的實際路徑,但我們可以通過 ls -l 命令找到其指向的文件路徑。
如果需要查找Python第三方庫 site-packages 的存放路徑,我們可以直接進入Python交互模式,藉助 sys.path 來快速找到。
不管是 Windows / Linux / Mac ,我們都可以通過以上方式來找到Python第三方庫路徑。
㈤ python怎麼查看已裝好的第三方庫
有時我們需要查看python的安裝位置,好安裝第三方庫,linux可以先python進入python cmd,然後輸入
import sys
print sys.path
即可列印所有python路徑。
tensorflow 位置: /usr/local/lib/python2.7/dist-packages/tensorflow
㈥ python第三方庫安裝到哪裡
將依賴包目錄放置到*:\Python*\Lib\site-packages\中,即python的安裝目錄中。
首先確定API目錄下是否有__init__.py文件,如果沒有,請新建一個。
打開API主運行文件,查看裡面的類名稱。此處為main.py文件,類為class dcVerCode。
此處以導入main中的類dcVerCode為例。
打開__init__.py,輸入:
from main import dcVerCode
這樣就完成了依賴包的指定。
然後再在程序中導入該包即可,此處的依賴包名稱為qqcr(即目錄名稱),所以輸入:
import qqcr
即可完成包的導入。
㈦ 同時安裝Python3和Anaconda3,安裝的第三方庫會放在哪裡
如果兩個安裝路徑不同,就會有兩個第三方庫,在不同地方,互相獨立。
Aconda3的話在對應路徑下。
python3的話看你設置。
㈧ python安裝第三方的庫package的方法,有誰懂,求指導
python安裝第三方模塊有多種方法:
直接下載安裝包安裝,解壓後,進入目錄,直接pythonsetup.pyinstall
使用包管理器pip安裝,直接pipinstall包名
如果解決了您的問題請採納!
如果未解決請繼續追問!
㈨ 如何向python中添加第三方類庫
1.直接使用pip安裝,類似於linux系統的yum/apt:
pipinstallnumpy
2.下載源碼,將源碼路徑添加到包搜索路徑中,或直接將源碼包放到python源包中。
3.如果是自己編寫的簡單類庫,直接放在和想要引用此類的py文件同級目錄下即可。
通過以上任意一種方法之後,即可直接在python環境中使用:
importnumpy
㈩ 如何查看PYTHON的安裝位置以及安裝第三方庫
默認安裝一般就去c盤program files或program files(x86)文件夾下面去找找唄。安裝第三方庫在命令行輸入 pip install packagename 就是了。不知道什麼是命令行問你家小娜搜索一下cmd。