python編譯用pyinstaller命令。
在python命令輸入框中可以用命令pip install pyinstaller 來安裝pyinstaller
B. python代碼運行需要編譯嗎
有人在討論 Python 代碼是編譯執行還是解釋執行?這個問題還可以換一種說法: Python 是編譯型語言還是解釋型語言?回答這個問題
前,我們先弄清楚什麼是編譯型語言,什麼是解釋型語言。
所謂編譯執行就是源代碼經過編譯器編譯處理,生成目標機器碼,就是機器能直接運行的二進制代碼,下次運行時無需重新編譯。不過它
是針對特定CPU體系的,這些目標代碼只能在特定平台執行,如果這個程序需要在另外一種 CPU 上面運行,這個代碼就必須重新編譯。
它不具備可移植性,但是執行速度快,C、C++這類語言屬於編譯型語言。
而解釋型語言是在代碼運行期間逐行翻譯成目標機器碼,下次執行時,還是需要逐行解釋,我們可以簡單認為 Java、Python 都是解釋型
語言。
編譯型相當於廚師直接做好一桌子菜,顧客來了直接開吃,而解釋型就像吃火鍋,廚師把菜洗好,顧客需要自己動手邊煮邊吃,效率上來
說解釋型語言自然比不過編譯型語言,當然也不是絕對了,像 JIT 的效率就很高
以上是對編譯型語言和解釋型語言的一個簡單粗暴的區分,但是 Python(這里主要是指CPython)並不是嚴格的解釋型語言,因為
Python 代碼在運行前,會先編譯(翻譯)成中間代碼,每個 .py 文件將被換轉成 .pyc 文件,.pyc 就是一種位元組碼文件,它是與平台無
關的中間代碼,不管你放在 Windows 還是 linux 平台都可以執行,運行時將由虛擬機逐行把位元組碼翻譯成目標代碼。
我們安裝Python 時候,會有一個 Python.exe 文件,它就是 Python 解釋器,你寫的每一行 Python 代碼都是由它負責執行,解釋器由
一個編譯器和一個虛擬機構成,編譯器負責將源代碼轉換成位元組碼文件,而虛擬機負責執行位元組碼,所以,解釋型語言其實也有編譯過
程,只不過這個編譯過程並不是直接生成目標代碼,而是中間代碼(位元組碼),然後再通過虛擬機來逐行解釋執行位元組碼。
總結
Python代碼首先會編程一個位元組碼文件,再由虛擬機逐行解釋,把每一行位元組碼代碼翻譯成目標指令給CPU執行。
推薦學習《Python教程》。
C. python如何編譯使用源文件
我是 擰發條的鳥 口中的樓上 和 azaleammm 口中的樓上的樓上……
因為系統找不到python.exe,所以說"NO SUCH……「
你需要進入python目錄
c:\python25>
這樣的狀態輸入python XXX.py 才會認
當然你也可以在系統變數裡面把PYTHON的工作目錄添加進去。
另外,py文件最好也放到PYTHON目錄,免得python找不到。
另外,由於PYTHON在LINUX下使用的很多,WINDOWS下應用較少。作者的工作環境就是linux,你看這句#!/usr/bin/python。
針對 擰發條的鳥 和 azaleammm 的回復:
1、對系統(WINDOWS)來說,默認查找目錄是當前目錄和WINDOWS\ 、windows\system32目錄。不在這幾個目錄中的EXE是提示「XXX不是一個有效的內部或外部命令或可執行程序」(十分抱歉!現在WINDOWS系統說的不是NO SUCH FILE OR DIRECTORY,我和其他的什麼系統計混了,感謝azaleammm糾正)
進入PYTHON25目錄輸入命令可以解決。
對PYTHON來說,默認查找目錄是PYTHON25\下的所有子目錄。不在這幾個目錄中提示的是:
「C:\Python25\python.exe: can't open file 'XXX': [Errno 2] No such file or director」
你應該把hellow文件放在PYTHON能夠找到的目錄,比如C:\PYTHON25\
#!usr/bin/python這句話不是必須的,一般只是LINUX下的作者習慣,我從來都不寫
# Filename : helloworld.py 我也從來都不寫。
因為LINUX下是不安擴展名而是按文件類型識別文件的,如果文件名不是*.py,LINUX根據這兩句注釋識別文件類型並自動選擇程序打開。
你直接雙擊的話到是可以執行,但是執行完後他就自動關閉了,所以一閃就沒。實際如果你的機器很爛就可以看到屏幕顯示了HELLOW WORLD。
如果你實在搞不清楚,就在IDLE中,文件〉新建〉
然後再新窗口中把代碼加入進去,然後點擊上面的運行(RUN),或者按F5
IDLE 2.5……恕我火星,是python 2.5裡面帶的那個IDLE吧,版本應該是1.2。
有RUN,啊,當然不是在交互模式下了(交互下從來就沒有),是在編輯模式下。
FILE〉NEW WINDOW ,
看看這一貼:
http://..com/question/48354047.html
RUN前PYTHON讓你存,你就存,存完交互那裡就有了(白底藍字的HELLO WORLD)
555555明明只是一個HELLOW WORLD而已……為什麼說了這么多話。還有什麼問題給我發消息。
D. python在那裡編譯和執行
首先python是解釋執行的,IDLE是集成開發環境,使用方法:
File->New Window->寫代碼
Run->Run mole
E. 如何編譯python源文件,如何創建python目錄
python源文件後綴名是.py,編譯後的後綴名是.pyc
編譯的話,直接python.exe foo.py就可以啊,不過你要注意的python.exe環境變數的設置。
創建python目錄?不太明白你的意思,操作系統里直接新建不就ok了?
或者你意思說python的包?如果這樣,在目錄里新建一個__init__.py就可以了
F. python如何編譯使用源文件
因為系統找不到python.exe,所以說"NO SUCH……「
你需要進入python目錄
c:\python25>
這樣的狀態輸入python XXX.py 才會認
當然你也可以在系統變數裡面把PYTHON的工作目錄添加進去。
另外,py文件最好也放到PYTHON目錄,免得python找不到。
另外,由於PYTHON在LINUX下使用的很多,WINDOWS下應用較少。作者的工作環境就是linux,你看這句#!/usr/bin/python。
針對 擰發條的鳥 和 azaleammm 的回復:
1、對系統(WINDOWS)來說,默認查找目錄是當前目錄和WINDOWS\ 、windows\system32目錄。不在這幾個目錄中的EXE是提示「XXX不是一個有效的內部或外部命令或可執行程序」(十分抱歉!現在WINDOWS系統說的不是NO SUCH FILE OR DIRECTORY,我和其他的什麼系統計混了,感謝azaleammm糾正)
進入PYTHON25目錄輸入命令可以解決。
對PYTHON來說,默認查找目錄是PYTHON25\下的所有子目錄。不在這幾個目錄中提示的是:
「C:\Python25\python.exe: can't open file 'XXX': [Errno 2] No such file or director」
你應該把hellow文件放在PYTHON能夠找到的目錄,比如C:\PYTHON25\
#!usr/bin/python這句話不是必須的,一般只是LINUX下的作者習慣,我從來都不寫
# Filename : helloworld.py 我也從來都不寫。
因為LINUX下是不安擴展名而是按文件類型識別文件的,如果文件名不是*.py,LINUX根據這兩句注釋識別文件類型並自動選擇程序打開。
你直接雙擊的話到是可以執行,但是執行完後他就自動關閉了,所以一閃就沒。實際如果你的機器很爛就可以看到屏幕顯示了HELLOW WORLD。
如果你實在搞不清楚,就在IDLE中,文件〉新建〉
然後再新窗口中把代碼加入進去,然後點擊上面的運行(RUN),或者按F5
IDLE 2.5……恕我火星,是python 2.5裡面帶的那個IDLE吧,版本應該是1.2。
有RUN,啊,當然不是在交互模式下了(交互下從來就沒有),是在編輯模式下。
FILE〉NEW WINDOW ,
看看這一貼:
http://..com/question/48354047.html
RUN前PYTHON讓你存,你就存,存完交互那裡就有了(白底藍字的HELLO WORLD)
555555明明只是一個HELLOW WORLD而已……為什麼說了這么多話。還有什麼問題給我發消息。
G. python項目代碼變更後一定要重新編譯嗎
一般的時候,你直接用py文件執行就可以了,python會自動編譯一些必要的文件。
另外目前py不同的位元組碼是變動的,也就是說不同版本的位元組碼還是不兼容,做不動一次編譯到處執行。
如果你現在三個文件 main.py, a.py, b.py
其中main是入口,而且在main中有import a.py 和import b.py
那麼只會生成a.pyc,b.pyc,而不會生成main.pyc
出發你自己用python中的compile命令編譯main.py
以上
H. 如何編譯Python使之成為可執行程序
Python是一個強大的工具,可惜不是每個人的計算機裡面都有安裝。當您寫了一個好用的工具。要如何讓那些沒有安裝Python的人使用你的工具呢?
對於這樣一個需要standalone exectuable環境的需求,直到撰寫經驗為止,只看到兩個比較好用且有持續維護的套件。一個是py2exe。另外一個就是本經驗要介紹的PyInstaller。
1
PyInstaller安裝
2
最新版本:PyInstaller 2.0
3
直接「解壓縮」之後即可使用,解壓到您想讓他在的路徑即可
END
PyInstaller配置
1
事先寫好py程序
2
在命令行執行:python Makespec.py --console --onefile NotePad\notepad.py
報錯:Configfile is missing or unreadable. Please run Configure.py before building
3
在命令行執行:Configure.py
報錯:Python 2.6+ on Windows support needs pywin32,Please install http://sourceforge.net/projects/pywin32/
4
安裝最新版本的 pywin32-217.win32-py2.7.exe
END
PyInstaller使用
命令行中運行
目錄切換到PyInstaller的安裝目錄「E:\pyinstaller-1.5\pyinstaller-1.
在PyInstaller的安裝目錄下新建一個文件夾(比如NotePad), 然後將要轉換的py腳本放到文件夾里(notepad.py)
E:\pyinstaller-1.5\pyinstaller-1.5>python Makespec.py --console --onefile NotePad\notepad.py
E:\pyinstaller-1.5\pyinstaller-1.5>python Build.py NotePad\notepad.spec
驗證exeE:\pyinstaller-1.5\pyinstaller-1.5>
E:\pyinstaller-1.5\pyinstaller-1.5\NotePad\dist\notepad.exe 0 0 100(成功)
查看生成的文件,生成的中間文件spec
查看生成的文件,生成的最終文件exe
END
注意事項
在轉換之前要確保py程序可以正常通過
如果轉換過程中出現什麼錯誤,用搜索引擎搜索解決一下
I. python ide怎麼編譯運行
Python IDE
本文為大家推薦幾款款不錯的Python IDE(集成開發環境),比較推薦 PyCharm,當然你可以根據自己的喜好來選擇適合自己的 Python IDE。
PyCharm
PyCharm 是由 JetBrains 打造的一款 Python IDE。
PyCharm 具備一般Python IDE的功能,比如:調試、語法高亮、項目管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制等。
另外,PyCharm 還提供了一些很好的功能用於 Django 開發,同時支持 Google App Engine,更酷的是,PyCharm 支持 IronPython。
PyCharm 官方下載地址:
效果圖查看:
J. 如何編譯Python程序
1、說明
編譯python程序就是把python腳本轉換成操作系統中的可執行文件,一般使用pyinstaller來完成。
2、步驟
1)安裝pyinstaller
使用pip install pyinstaller命令來安裝
2)編譯腳本
python安裝目錄\script\pyinstaller 腳本文件名
3)完成
執行腳本後就可以在腳本目錄生成dist目錄,目錄就有打包好的可執行文件
3、備注
pyinstaller參數
-w指令
直接發布的exe應用帶命令行調試窗口,在指令內加入-w命令可以屏蔽
-F指令
注意指令區分大小寫。這里是大寫。使用-F指令可以把應用打包成一個獨立的exe文件,否則是一個帶各種dll和依賴文件的文件夾
-p指令
這個指令後面可以增加pyinstaller搜索模塊的路徑。因為應用打包涉及的模塊很多。這里可以自己添加路徑。不過經過筆者測試,site-packages目錄下都是可以被識別的,不需要再手動添加