① vs2017如何打包python項目,生成exe文件
可以使用PyInstaller把python程序打包成exe,安裝使用pip install pyinstaller,使用時,使用pyinstaller打包,參數如下
-F, –onefile 打包一個單個文件,如果你的代碼都寫在一個.py文件的話,可以用這個,如果是多個.py文件就別用
-D, –onedir 打包多個文件,在dist中生成很多依賴文件,適合以框架形式編寫工具代碼,我個人比較推薦這樣,代碼易於維護
-K, –tk 在部署時包含 TCL/TK
-a, –ascii 不包含編碼.在支持Unicode的python版本上默認包含所有的編碼.
-d, –debug 產生debug版本的可執行文件
-w,–windowed,–noconsole 使用Windows子系統執行.當程序啟動的時候不會打開命令行(只對Windows有效)
-c,–nowindowed,–console
使用控制檯子系統執行(默認)(只對Windows有效)
pyinstaller -c xxxx.py
pyinstaller xxxx.py --console
-s,–strip 可執行文件和共享庫將run through strip.注意Cygwin的strip往往使普通的win32 Dll無法使用.
-X, –upx 如果有UPX安裝(執行Configure.py時檢測),會壓縮執行文件(Windows系統中的DLL也會)(參見note)
-o DIR, –out=DIR 指定spec文件的生成目錄,如果沒有指定,而且當前目錄是PyInstaller的根目錄,會自動創建一個用於輸出(spec和生成的可執行文件)的目錄.如果沒有指定,而當前目錄不是PyInstaller的根目錄,則會輸出到當前的目錄下.
-p DIR, –path=DIR 設置導入路徑(和使用PYTHONPATH效果相似).可以用路徑分割符(Windows使用分號,Linux使用冒號)分割,指定多個目錄.也可以使用多個-p參數來設置多個導入路徑,讓pyinstaller自己去找程序需要的資源
–icon=<FILE.ICO>
將file.ico添加為可執行文件的資源(只對Windows系統有效),改變程序的圖標 pyinstaller -i ico路徑 xxxxx.py
–icon=<FILE.EXE,N> 將file.exe的第n個圖標添加為可執行文件的資源(只對Windows系統有效)
-v FILE, –version=FILE 將verfile作為可執行文件的版本資源(只對Windows系統有效)
-n NAME, –name=NAME 可選的項目(產生的spec的)名字.如果省略,第一個腳本的主文件名將作為spec的名字
② python打包的只給別人dist文件夾下的
您好,Python打包的文件只需要把dist文件夾下的文件發送給別人即可。dist文件夾下的棗叢卜文件是Python程序的可執行文件,它包含了所有的依賴文件,可鄭升以讓別人在任何操作系統上運行Python程序。如果您想要把Python程序發送給別人,只需要把dist文件夾下的文件發送給他們即可。凳穗
③ python文件打包為bat用以分享
將Python文件打包為可執行的.bat文件,可以方便地分享給其他人使用。以下是一些簡單的步驟:
1. 在Python文件所在的目錄中創建一個新的文本文件。
2. 將以下代碼復制到新的文本文件中:
```
@echo off
python 文件名.py
pause
```
3. 將「文件名.py」替換為您要運行的Python文件的名稱。
4. 保存文件並將其重命名為.bat文件。例如,如果您的Python文件名為運仿「test.py」,則將.bat文件命名為「test.bat」。
5. 將.bat文件與Python文件一起分享給其他人。
現在,其他雹悄悶人可以雙擊.bat文件來運行Python腳本,而無需打開命令提示符並手動輸入命令。請注意,其他人需要安裝Python並將其添加到系統路徑中,以便.bat文件可以正確源彎運行Python文件。
④ 如何將一整個python工程打包
1、下載並蘆轎安裝py2exe,可下載最新版本。
2、編寫安裝腳本,比較簡單,不過多解釋,如下:
Screenshot_setup.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from distutils.core import setup
import py2exe
includes = ["encodings", "encodings.*"]
data_files = ['CameraDll.dll']
options = {"py2exe":
{ "compressed": 1,
"optimize": 2,
"bundle_files": 1,
"includes": includes
}
}
setup(
version = "1.0",
description = "Screenshot Tool",
name = "Screenshot Tool",
options = options,
zipfile=None,
data_files = data_files,
console=[{"script": "陪銷肆Screenshot.py", "icon_resources": [(1, "Screenshot.ico")] }]
)
各參數含義見第5小節或執行python命令行下執行help(py2exe)查看。
3、打包程序:
a、將要找包的程序、文件和打包腳本放在同一目錄下,如下:
E:\tmp\pyexe_tmp>tree /F
文件夾 PATH 列表
卷序列號碼為 0007F240 101F:F68D
E:.
CameraDll.dll
screenshot.ico
Screenshot.py
screenshot_setup.py
沒有子文件夾
E:\tmp\pyexe_tmp>
b、執行打包腳本:
E:\tmp\pyexe_tmp>python screenshot_setup.py py2exe
python screenshot_setup.py py2exe
running py2exe
creating E:\tmp\pyexe_tmp\build
creating E:\tmp\pyexe_tmp\build\bdist.win32
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe\collect-2.6
creating E:\tmp\pyexe_tmp\build\bdist.win32\winexe\bundle-2.6
creating E:\斗滲tmp\pyexe_tmp\build\bdist.win32\winexe\temp
creating E:\tmp\pyexe_tmp\dist
*** searching for required moles ***
*** parsing results ***
*** finding dlls needed ***
*** create binaries ***
*** byte compile python files ***
writing byte-compilation script 'e:\tmp\tmp1ecbcw.py'
⑤ 怎麼把python打包成一個程序
一、安裝pyinsatller打開命令行窗口,輸入如下指令
pip3 install pyinstaller
然後靜待pyinstaller自動安裝好
二、旁遲使用pyinstaller打包Python程序
在你的Python程序文件夾上(不點進去)按住shift並且右鍵,在彈出的選項中點擊"在此處打開命令行窗口"或者「在此處打開PowerShell窗口」或者先進入命令行窗口,然後使用cd指令進入程序文件夾,示例:
cd G:\工程儲存\Python工程\love
輸入以下指令,開始打包
pyinstaller -F -w (-i icofile) filename
filename表示你的Python程序文件名
-w 表示隱藏程序運行時的命令行窗口(不加-w會有黑色窗口)
括弧內的為可選參數,-i icofile表示給程毀塵序加上圖標,圖標必須為.ico格式icofile表示圖標的位置,建議直接放在程序文件夾裡面,這樣子打包的時候直接寫文件名就好輸入完成,按回車,就會開始自動打包了,
第一次打包過程可能運余李比較緩慢輸入
示例:pyinstaller -F -w -i favicon love.py
然後我們進入到程序目錄裡面會再看到一個名稱為dist目錄,打包好的exe程序就在裡面
⑥ python怎麼打包整個項目
distutils - Python自帶的基本安裝工具, 適用於非常簡單的應用場景使用, 不支持依賴包的安裝
通過distutils來打包,生成安裝包,安裝python包等工作,需要編寫名為setup.py python腳本文件。
setuptools - 針對 distutils 做了大量擴展, 尤其是加入了包依賴機制。不支持python3,安裝完setuptools後會有easy_install
distribute - 類似於setuptools,支持python3,安裝完distribute後會有easy_install。
easy_install - setuptools 和 distribute 自帶的安裝腳本, 也就是一旦setuptools或distribute安裝完畢, easy_install 也便可用了。
pip - 目標是取代easy_install。easy_install 有很多不足: 安裝事務是非原子操作, 只支持 svn, 沒有提供卸載命令, 安裝一系列包時需要寫
腳本; pip 解決了以上問題, 已儼然成為新的事實標准, virtualenv 與它已經成為一對好搭檔;
distutils2 - setuptools 和 distribute 的誕生是因為 distutils 的不濟, 進而導致目前分化的狀況。它將成為 Python 3.3 的標准庫
packaging , 並在其它版本中以distutils2 的身份出現; 換句話說, 它和 pip 將聯手結束目前混亂的狀況。
virtualenv - 用來創建隔離的python環境,處理python環境的多版本和模塊依賴。
常識
sudo apt-get install 安裝的package存放在 /usr/lib/python2.7/dist-packages目錄中
pip 或者 easy_install安裝的package存放在/usr/local/lib/python2.7/dist-packages目錄中
手動從源代碼安裝的package存放在site-packages目錄中。
更多學習內容,請點擊Python學習網!
⑦ 怎麼將多個python打包成exe文件
1、安裝pywin32,可以參考《怎麼給python安裝pywin32模塊?》,一定要注意對應的python版本,否則不能安裝。
⑧ 使用PyInstaller打包Python程序
PyInstaller是一個用來將Python程序打包成獨立可執行軟體的工具,支持 Windows、Linux 和 Mac OS X。生成的可執行軟體在沒有Python的環境中可以直接運行,方便軟體分發,進一步降低使用成本,提升使用效率。
下面演示如何使用 PyInstaller 將程序打包成Windows下的exe軟體。
使用pip的方式進行安裝,這樣可以自動安裝其他依賴庫。
如果pip還未安裝,請參考我的另一篇文章《 Python pip包管理工具 》
在cmd命令行控制台或者VS Code內置的終端輸入命令行生成應用,首先將當前路徑切換到Python程序所在的路徑(如下示例的SubOcr.py文件在python文件夾下的SubOcr文件夾內),然後輸入生成應用的命令。
命令執行成功後在 I:workpythonSubOcrdist 文件夾下生成了SubOcr文件夾,裡麵包含了SubOcr.exe文件。整個SubOcr文件夾就是一個綠色軟體,隨便移動到任何位置都可運行。
實際上在用pyinstaller命令時會在Python程序的所在路徑生成一個後綴為spec的同名文件,然後根據此文件的配置生成應用,這就是PyInstaller的原理。這樣做的好處是spec保存了生成應用的配置,每次重新生成應用時可以省略指定參數,尤其是指定了其他的資源、程序庫時。我們可以通過以下命令先生成spec文件。
pyi-makespec的命令參數跟pyinstaller的相同,在生成spec文件後可以對其部分選項進行編輯(可以用VS Code或自帶的記事本編輯),添加更多參數,然後再用pyinstaller命令生成應用。
spec文件的主要選項:
上面示例的SubOcr用到了opencc和opencv-python,其中opencc下的數據文件和opencv-python下的dll文件在生成應用時不會自動導入(缺少這些文件應用無法正常使用),因此需要在spec文件中指定路徑。對spec文件的修改如下:
以上便是PyInstaller打包Python程序的全過程,如果在此過程中遇到問題,可以在評論區留言,定當知無不言,言無不盡。
⑨ 如何將一個python工程打包成一個庫
安裝完pyinstaller之後就可以開始了。
1.使用pyinstaller生成可執行文件的方法
1.1 將依賴文件集中到一個文件夾:
pyinstaller -D -w main.py #把main.py替換成你的主入口python文件即可。
-w參數代表main.py是一個窗體程序。
1.2 將所有依賴文件都打包到同一個可執行文件中:
pyinstaller -F -w main.py
2.調查pyinstaller生成程序的載入過程
使用如下命令,可以得到運行時的跟蹤,tracing ,loader 的載入過程。
pyinstaller -Fwd aui.py #把aui.py 換成你需要偵測的文件即可。
⑩ Python項目打包為docker鏡像並遷移
1.安裝docker服務:
centos 下直接yum安裝
yum install docker
2.修改docker倉庫地址為國內:
略
3.編寫Dockerfile, 如下:
4.製作鏡像:
docker build -f Dockerfile -t blogapp:1.0 .
ps:
最後一個參數是.號,別忘了加
製作鏡像可能是一個漫長的過程。。。
途中有問題會中止,需要檢查問題並修改Dockerfile,然後重新開始。。。
5.查看製作的鏡像:
docker images
6.運行鏡像,創建鏡像實例,即運行容器:
docker run -it -p 192.168.5.109:8080:8888 blogapp:1.0
可以看到,項目已經正常開啟,瀏覽器可以正常訪問:
7.導出鏡像為tar包:
docker image save -o blogapp.tar blogapp:1.0
8.在新機導入tar包為鏡像:
docker load < blogapp.tar
9.查看新導入的鏡像:
10.在新機運行鏡像,後台開啟容器:
docker run -it -p 192.168.5.110:8080:8888 blogapp:1.0
可以看到後台開啟成功,瀏覽器訪問新址: