軟體製作 Python

2022-09-08 19:42:11 字數 3024 閱讀 2838

一、簡介

py2exe是乙個將python指令碼轉換成windows上的可獨立執行的可執行程式(*.exe)的工具,這樣,你就可以不用裝python而在windows系統上執行這個可執行程式。

py2exe已經被用於建立wxpython,tkinter,pmw,pygtk,pygame,win32com client和server,和其它的獨立程式。py2exe是發布在開源許可證下的。

二、安裝py2exe

首先檢視本機安裝的

python

版本,readme.txt

:this is python version 2.7

;python

對應的py2exe

版本的instatller

\lib\site-packages\py2exe

\有很多例項,這樣

py2exe

成功安裝了

三、py2exe的用法

\wpsqli.py的python指令碼,你想把它轉換為執行在windows上的可執行程式,並執行在沒有安裝python的windows系統上,那麼首先你應寫乙個用於發布程式(就是把

.py檔案編譯成

.exe

的乙個指令碼)的設定指令碼例如mysetup.py,在其中的setup函式前插入語句import py2exe 。

mysetup.py示例如下:

# mysetup.py

from distutils.core import setup

import py2exe

setup(console=["

c:\python27\tools\wordpresssqlinjectionchecker

\wpsqli.py

"])然後按下面的方法執行mysetup.py:

c:\python27>pythonc:\python27\tools\wordpresssqlinjectionchecker\mysetup.py

py2exe

上面的命令執行後將產生乙個名為c:\python27\dist的子目錄,其中包含了

wpsqli

.exe,python2

7.dll,library.zip這些檔案。

如果你的wpsqli.py指令碼中用了已編譯的c擴充套件模組,那麼這些模組也會被拷貝在個子目錄中,同樣,所有的dll檔案在執行時都是需要的,除了系統的dll檔案。

c:\python27\dist子目錄中的檔案包含了你的程式所必須的東西,你應將這個子目錄中的所有內容一起發布。

預設情況下,py2exe在目錄dist下建立以下這些必須的檔案:

1、乙個或多個exe檔案。

2、python##.dll。

3、幾個.pyd檔案,它們是已編譯的副檔名,它們是exe檔案所需要的;加上其它的.dll檔案,這些.dll是.pyd所需要的。

4、乙個library.zip檔案,它包含了已編譯的純的python模組如.pyc或.pyo

上面的mysetup.py建立了乙個控制台的wpsqli.exe程式,如果你要建立乙個圖形使用者界的程式,那麼你只需要將mysetup.py中的console=["wpsqli.py"]替換為windows=["myscript.py"]既可。

執行下面個命令,將顯示py2exe命令的所有命令列標記。

c:\python27>pythonc:\python27\tools\wordpresssqlinjectionchecker\mysetup.py

py2exe --help

四、指定額外的檔案

一些應用程式在執行時需要額外的檔案,諸如配置檔案、字型、位圖。

如果在安裝指令碼中用data_files可選項指定了那些額外的檔案,那麼py2exe能將這些檔案拷貝到dist子目錄中。data_files應包含乙個元組(target-dir, files)列表,其中的files是這些額外的檔案的列表。

示例如下:

# mysetup.py

from distutils.core import setup

import glob

import py2exe

setup(console=["helloworld.py"],

data_files=[("bitmaps",

["bm/large.gif", "bm/small.gif"]),

("fonts",

glob.glob("fonts\\*.fnt"))],

)說明:data_files選項將建立乙個子目錄dist\bitmaps,其中包含兩個.gif檔案;乙個子目錄dist\fonts,其中包含了所有的.fnt檔案。

五、windows nt services

你可以通過傳遞乙個service關鍵字引數給setup函式來建造windows nt services,這個service引數的值必須是乙個python模組名(包含一service類)的列表。

示例如下:

# mysetup.py

from distutils.core import setup

import py2exe

setup(service=["myservice"])

所建造的可執行的service是可以通過在其後跟一定的命令列引數標記來自行安裝和解除安裝的。你可以通過在這個可執行的service(exe)後跟一-help引數來得到更多的幫助。

六、com servers

你可以通過傳遞乙個com_server 關鍵字引數給setup函式來建造windows nt services,這個service引數的值必須是乙個python模組名(包含乙個或多個com server 類)的列表。

示例如下:

# mysetup.py

from distutils.core import setup

import py2exe

setup(com_server=["win32com.server.interp"])

預設情況下,dll和exe servers被建造,你不需要它們的話你可以簡單的刪除它們

我最近在玩和訊微博,很方便,很實用,你也來和我一起玩吧!

去看看我的微博吧!

拿下python軟體製作

累的都寫不動了。等有空還是要寫細一些。主要是scrapy,selenium,wxpython和pyinstaller,連用,裡面的各種細節。2017 08 14 僅從結構說說,首先專案抓取這塊是下面的crawljira.py去完成的,然後後這個inte cejira.py是用來做介面的。ccrawl...

python製作軟體授權 python類的授權方式

繼承的方式 利用類的繼承來改寫原有list方法 class list list if not isinstance value,str raise typeerror must be string def insert self,index,value if not isinstance value...

軟體製作體驗

軟體個人製作至少分為5個步驟 1.定義功能需求。2.設計資料庫 3.程式實現基本功能 4.補充輸入有效性檢查並修正邏輯錯誤 5.美工並再次檢查程式的不足之處 資料庫設計的心得體會 1 所有的資料都儲存在資料庫中,2 使用儲存過程解決業務問題 3 儲存過程要短小精悍,以便於修改 4 資料表中如果有重複...