如何用pip離線安裝Python第三方庫(kù)--paramiko?
下載paramiko安裝包以及requirements的依賴包,解壓到Python路徑/lib/site-packages下面
執(zhí)行install
如何下載jupyter代碼編輯器?
打開命令提示符,輸入python,保證python能夠正常運(yùn)行:
pip會(huì)自動(dòng)下載jupyter對(duì)應(yīng)的依賴,然后安裝完成。
命令行輸入:pipinstalljupyter
安裝成功后在包目錄有jupyter.exe文件
啟動(dòng)jupyter
命令行輸入:jupyternotebook
python如何打包成exe文件?
在之前文章《讓你的代碼更好的交付,使用Python實(shí)現(xiàn)模塊打包發(fā)布》中,分享了測(cè)試開發(fā)工程師在進(jìn)行交付時(shí),對(duì)交付模塊使用Wheel庫(kù)將其打包成.whl文件,已達(dá)到提高交付、部署效率的目的。同時(shí),采用統(tǒng)一的發(fā)布,也有助于提高測(cè)試開發(fā)的規(guī)范性。
除了可以將發(fā)布模塊打包成.whl
格式的文件,對(duì)于某些小型測(cè)試工具發(fā)布的場(chǎng)景,分享一種更適合的發(fā)布——打包成可執(zhí)行的.exe程序,這樣即使使用者在沒有Python的環(huán)境中仍然可以直接運(yùn)行,進(jìn)一步的降低了使用成本,提升使用效率。
接下來就分享一下,如何使用PyInstaller庫(kù)將發(fā)布模塊打包成.exe格式文件。
PyInstaller安裝建議使用pip的進(jìn)行安裝,否則可能會(huì)報(bào)缺失其他依賴庫(kù)的情況,需要逐個(gè)手動(dòng)安裝。
pipinstallPyInstallerPyInstaller使用如下簡(jiǎn)單代碼示例,其中導(dǎo)入了Python內(nèi)置庫(kù)——time模塊和第三方庫(kù)——csv模塊,實(shí)現(xiàn)了每次運(yùn)行時(shí),在新生成的csv文件中寫入固定數(shù)據(jù)。
在該模塊目錄內(nèi)執(zhí)行如下命令,執(zhí)行日志如下:
pyinstaller其中在當(dāng)前目錄中可以看到生成了.uildWriteFilesWriteFiles.exe文件
我們執(zhí)行WriteFiles.exe,可以發(fā)現(xiàn)在當(dāng)前目錄下,新增了WriteFile_1550935956.csv文件。
PyInstaller常用參數(shù)說明-F:打包單個(gè)文件,生成結(jié)果是一個(gè).exe格式文件。-D:打包多個(gè)文件,生成結(jié)果是一個(gè)目錄,包含第三方依賴、資源、.exe文件等,適合以框架形式編寫工具模塊,默認(rèn)參數(shù)。-c:使用Windows控制臺(tái)子系統(tǒng)執(zhí)行,顯示命令行窗口,默認(rèn)參數(shù)。-w:使用Windows子系統(tǒng)執(zhí)行,當(dāng)程序啟動(dòng)的時(shí)候不會(huì)打開命令行,編寫GUI程序時(shí)使用此參數(shù)有用。-p:指定額外的import路徑,類似于使用PYTHONPATH,多個(gè)目錄可以用路徑分割符(Windows使用分號(hào),Linux使用冒號(hào))。–add-data:打包額外資源,多個(gè)資源可以使用路徑分割符(Windows使用分號(hào),Linux使用冒號(hào))。–add-binary:打包額外的代碼,多個(gè)代碼可以使用路徑分割符(Windows使用分號(hào),Linux使用冒號(hào))。同時(shí)–add-binary添加文件的引用文件會(huì)一并添加進(jìn)來。-i:添加.exe文件的icon圖標(biāo)。-n:編輯.exe文件和.spec的文件名。我們嘗試使用其中-F,-n參數(shù),只生成一個(gè)文件名為Toutiao的.exe格式文件。我們執(zhí)行如下命令,運(yùn)行日志如下:
pyinstaller-F-nToutiao.exe其中在當(dāng)前目錄中生成了.distToutiao.exe文件,目錄結(jié)構(gòu)如下。
除了PyInstaller模塊能夠?qū)⒛K打包成.exe格式的可執(zhí)行程序,還可以了解下pyexe模塊,它也可以實(shí)現(xiàn)相同效果的打包,這里就不做單獨(dú)的介紹了。
若對(duì)你有所幫助,歡迎大家評(píng)論、留言。