當前位置:首頁 » 編程語言 » python文檔生成

python文檔生成

發布時間: 2022-07-23 18:44:42

python怎麼生成可執行文件

Python是一個腳本語言,被解釋器解釋執行。它的發布方式:

  • .py文件:對於開源項目或者源碼沒那麼重要的,直接提供源碼,需要使用者自行安裝Python並且安裝依賴的各種庫。(Python官方的各種安裝包就是這樣做的)

  • .pyc文件:有些公司或個人因為機密或者各種原因,不願意源碼被運行者看到,可以使用pyc文件發布,pyc文件是Python解釋器可以識別的二進制碼,故發布後也是跨平台的,需要使用者安裝相應版本的Python和依賴庫。

  • 可執行文件:對於非碼農用戶或者一些小白用戶,你讓他裝個Python同時還要折騰一堆依賴庫,那簡直是個災難。對於此類用戶,最簡單的方式就是提供一個可執行文件,只需要把用法告訴Ta即可。比較麻煩的是需要針對不同平台需要打包不同的可執行文件(Windows,Linux,Mac,...)。

  • 本文主要就是介紹最後一種方式,.py和.pyc都比較簡單,Python本身就可以搞定。將Python腳本打包成可執行文件有多種方式,本文重點介紹PyInstaller,其它僅作比較和參考。

    Freezing Your Code

    各種打包工具的對比如下(來自文章Freezing Your Code):

    Solution

    Windows

    Linux

    OS X

    Python 3

    License

    One-file mode

    Zipfile import

    Eggs

    pkg_resources support

    bbFreeze yes yes yes no MIT no yes yes yes

    py2exe yes no no yes MIT yes yes no no

    pyInstaller yes yes yes no GPL yes no yes no

    cx_Freeze yes yes yes yes PSF no yes yes no

    py2app no no yes yes MIT no yes yes yes

    PS.其中pyInstaller和cx_Freeze都是不錯的,stackoverflow上也有人建議用cx_Freeze,說是更便捷些。pkg_resources新版的pyInstaller貌似是支持的。

    安裝PyInstaller

    對於那些網路比較穩定,能夠流暢使用pip源地址的用戶,直接下面的命令就可以搞定:

  • pip install pyinstaller

  • 通常我們會下載源碼包,然後進入包目錄,執行下面的命令(需要安裝setuptools):

  • python setup.py install

  • 安裝完後,檢查安裝成功與否:

  • pyinstaller --version

  • 安裝成功後,就可以使用下面的命令了:

  • pyinstaller: 打包可執行文件的主要命令,詳細用法下面會介紹。

  • pyi-archive_viewer: 查看可執行包裡面的文件列表。

  • pyi-bindepend: 查看可執行文件依賴的動態庫(.so或.dll文件)

  • pyi-...: 等等。

  • 使用PyInstaller

    pyinstaller的語法:

  • pyinstaller [options] script [script ...] | specfile

  • 最簡單的用法,在和myscript.py同目錄下執行命令:

  • pyinstaller mycript.py

  • 然後會看到新增加了兩個目錄build和dist,dist下面的文件就是可以發布的可執行文件,對於上面的命令你會發現dist目錄下面有一堆文件,各種都動態庫文件和myscrip可執行文件。有時這樣感覺比較麻煩,需要打包dist下面的所有東西才能發布,萬一丟掉一個動態庫就無法運行了,好在pyInstaller支持單文件模式,只需要執行:

  • pyinstaller -F mycript.py

  • 你會發現dist下面只有一個可執行文件,這個單文件就可以發布了,可以運行在你正在使用的操作系統類似的系統的下面。

    當然,pyinstaller還有各種選項,有通用選項,如-d選項用於debug,了解pyInstaller執行的過程;還有一些針對不同平台的選項,具體用法可以訪問PyInstaller官方WIKI。

    在執行pyInstaller命令的時候,會在和腳本相同目錄下,生成一個.spec文件,該文件會告訴pyinstaller如何處理你的所有腳本,同時包含了命令選項。一般我們不用去理會這個文件,若需要打包數據文件,或者給打包的二進制增加一些Python的運行時選項時...一些高級打包選項時,需要手動編輯.spec文件。可以使用:

  • pyi-makespec options script [script ...]

  • 創建一個.spec文件,對於手動編輯的.spec文件,我們可以使用下面任意一條命令:

  • pyinstaller specfile pyi-build specfile

  • PyInstaller的原理簡介

    PyInstaller其實就是把python解析器和你自己的腳本打包成一個可執行的文件,和編譯成真正的機器碼完全是兩回事,所以千萬不要指望成打包成一個可執行文件會提高運行效率,相反可能會降低運行效率,好處就是在運行者的機器上不用安裝python和你的腳本依賴的庫。在Linux操作系統下,它主要用的binutil工具包裡面的ldd和objmp命令。

    PyInstaller輸入你指定的的腳本,首先分析腳本所依賴的其他腳本,然後去查找,復制,把所有相關的腳本收集起來,包括Python解析器,然後把這些文件放在一個目錄下,或者打包進一個可執行文件裡面。

    可以直接發布輸出的整個文件夾裡面的文件,或者生成的可執行文件。你只需要告訴用戶,你的應用App是自我包含的,不需要安裝其他包,或某個版本的Python,就可以直接運行了。

    需要注意的是,PyInstaller打包的執行文件,只能在和打包機器系統同樣的環境下。也就是說,不具備可移植性,若需要在不同系統上運行,就必須針對該平台進行打包。

❷ 如何用Python創建生成xml文檔文件的方法

1、內存數據產生

2、產生xml內存對象(也就是DOM樹)

3、產生根對象

4、往根對象里加數據

5、把xml內存對象寫到文件

下面是一個創建xml文檔的簡單實例:

importxml.dom.minidom#在內存中創建一個空的文檔doc=xml.dom.minidom.Document()
#創建一個根節點Managers對象root=doc.createElement('Managers')
#設置根節點的屬性root.setAttribute('company','xx科技')
root.setAttribute('address','科技軟體園')
#將根節點添加到文檔對象中doc.appendChild(root)

managerList=[{'name':'joy','age':27,'sex':'女'},
{'name':'tom','age':30,'sex':'男'},
{'name':'ruby','age':29,'sex':'女'}
]foriinmanagerList:
nodeManager=doc.createElement('Manager')
nodeName=doc.createElement('name')
#給葉子節點name設置一個文本節點,用於顯示文本內容
nodeName.appendChild(doc.createTextNode(str(i['name'])))

nodeAge=doc.createElement("age")
nodeAge.appendChild(doc.createTextNode(str(i["age"])))

nodeSex=doc.createElement("sex")
nodeSex.appendChild(doc.createTextNode(str(i["sex"])))

#將各葉子節點添加到父節點Manager中,
#最後將Manager添加到根節點Managers中
nodeManager.appendChild(nodeName)
nodeManager.appendChild(nodeAge)
nodeManager.appendChild(nodeSex)
root.appendChild(nodeManager)#開始寫xml文檔fp=open('c:\wcx\Manager.xml','w')
doc.writexml(fp,indent=' ',addindent=' ',newl=' ',encoding="utf-8")

執行結果:

<?xmlversion="1.0"encoding="utf-8"?>
<Managersaddress="科技軟體園"company="xx科技">
<Manager>
<name>joy</name>
<age>27</age>
<sex>女</sex>
</Manager>
<Manager>
<name>tom</name>
<age>30</age>
<sex>男</sex>
</Manager>
<Manager>
<name>ruby</name>
<age>29</age>
<sex>女</sex>
</Manager>
</Managers>

6.用Python自帶的寫xml文檔的API去寫,比較方便,後期容易維護。如果直接用打開文件的方式,一行一行的去寫,比較費時,也難以維護。

❸ python怎麼創建word文件

兩行代碼搞定(其實一行就可以創建了,不過關閉語句必須得有,或者你可以使用with open語句創建文檔,就可以不使用close()方法關閉,它會自動關閉):

f=open('test.docx','w')#創建docx格式文件
f.close()#關閉文檔,為了解除當前python程序對test.docx文檔的佔用

測試:

  1. 首先此目錄並無docx的文檔:

已經多個一個test.docx,word的空文檔。因為沒有寫入數據,所以是空文檔。

你可以在f.close()之前,使用f.wrie('testadfas')寫入數據,然後再調用f.close()關閉

❹ 如何編譯Python程序生成.pyc文件

pyc文件就是
py程序編譯後得到的位元組碼文件
(py->pyc),python為了提高運行效率也會進行編譯,有時候編譯出pyc文件後,刪除py文件也不會出錯助於pyc文件的產生,給樓主舉例加入你有一個邏輯文件abcd.py,裡面有很多函數A,B,C,D,這個時候,如果你有一個test腳本去導入了abcd.py,只要你運行test腳本,在adcd.py目錄下就會生成一個abcd.pyc文件,而不管你是否需要調用A,B,C,D函數

❺ python依據模板生成word文件

1、安裝包

pip installdocxtpl


2、製作模板

❻ 如何通過python代碼自動生成文檔

代碼如下:
sphinx-apidoc
-F
-o
C:\python_doc\flask
C:\python27\lib\site-packages\
(此處-o應緊跟輸出文件夾,不然會產生一個-F的文件夾,多謝@Hyacz)
然後進入C:\python_doc\flask文件夾
cd
C:\python_doc\flask
此文件夾下有一個make.bat文件,再執行一下
make
html
然後就能在\_build\html文件夾中看到生成好的文檔了,還支持查找的功能!

❼ python文件如何生成可執行文件

先創建一個 app 目錄,在該目錄下創建一個 1233.py文件,文件中包含如下代碼:

  • for looper in [1,2,3,4,5]:
    print(looper)
  • 接下來使用命令行工具進入到此 app 目錄下,執行如下命令:

    pyinstaller -F 1233.py

    執行上面命令,將看到詳細的生成過程。當生成完成後,將會在此 app 目錄下看到多了一個 dist 目錄,並在該目錄下看到有一個 1233.exe文件,這就是使用 PyInstaller 工具生成的 EXE 程序。

❽ 如何使用sphinx生成Python第三方模塊的文檔

在使用Python的過程中,無疑我們經常需要下載安裝第三方模塊(如何安裝:URL),而安裝後我們必然會面臨一個使用的問題,這時候我們需要閱讀相關的文檔。可是我們會發現下載的第三方模塊目錄的doc文件夾下只有一個conf.py文件和一些後綴為rst的文件,文檔在哪裡呢?
其實Python提供了專用的文檔生成工具,有了這些工具就可以很方便地生成我們需要的文檔了。本文就是介紹如何使用一些第三方工具(sphinx)來生成這些文檔。
1.下載並安裝Docutils:http://docutils.sf.net/。
2.下載並安裝sphinx :http://pypi.python.org/pypi/Sphinx/1.1。Sphinx 是用來生成文檔的,設計的初衷是為了生成python的文檔。可以生成html、htmlhelp/chm、qthelp、devhelp、latex、man 等格式的文檔。
3.在Widnows環境下,打開命令提示符,使用cd /d 命令將當前目錄切換至Sphinx目錄,運行命令:python sphinx-build.py -b html sourcedir builddir,其中,-b後面的字元串用於控制輸出文檔的格式,默認為html。sourcedir表示文檔來源文件夾(一般就是包含conf.py文件的那個文件夾),builddir表示生成文檔的目標文件夾。(註:在Windows環境下,請不要將sphinx文件夾、sourcedir 和builddir 設置成包含中文的路徑,否則容易出現一些默名其妙的錯誤,例如編碼錯誤。)

❾ 如何用python生成excel文件

使用xlsxwriter庫就可以了。給個例子參考下:

# 創建一個新的excel文件,demo.xlsx

workbook = xlsxwriter.Workbook('demo.xlsx')

worksheet = workbook.add_worksheet()

# 設置A列的寬度

worksheet.set_column('A:A', 20)

bold = workbook.add_format({'bold': True})

worksheet.write('A1', 'Hello')

worksheet.write('A2', 'World', bold)

worksheet.write(2, 0, 123)

worksheet.write(3, 0, 123.456)

worksheet.insert_image('B5', 'logo.png')

workbook.close()

運行結果:

熱點內容
c語言小數點後四捨五入 發布:2025-01-31 11:10:10 瀏覽:496
httpslinux 發布:2025-01-31 11:10:09 瀏覽:828
java4 發布:2025-01-31 11:08:42 瀏覽:355
什麼是密碼屏蔽 發布:2025-01-31 11:05:13 瀏覽:216
一個演算法的效率可分為 發布:2025-01-31 11:05:12 瀏覽:639
win7用戶名密碼是什麼 發布:2025-01-31 10:57:38 瀏覽:394
網址埠訪問 發布:2025-01-31 10:49:30 瀏覽:512
javaweb代碼 發布:2025-01-31 10:37:54 瀏覽:259
sqlserver合並 發布:2025-01-31 10:22:27 瀏覽:712
大理伺服器地址 發布:2025-01-31 10:10:52 瀏覽:972