当前位置:首页 » 编程语言 » 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()

运行结果:

热点内容
ftpdos命令上传 发布:2025-01-31 08:14:44 浏览:105
intenumjava 发布:2025-01-31 08:14:37 浏览:802
android3x 发布:2025-01-31 08:13:03 浏览:600
如何购买安卓版live2d 发布:2025-01-31 08:13:01 浏览:279
python交互输入 发布:2025-01-31 08:12:53 浏览:427
requestdatapython 发布:2025-01-31 08:02:01 浏览:44
javades加密工具 发布:2025-01-31 07:54:04 浏览:244
电话如何配置ip 发布:2025-01-31 07:48:48 浏览:300
2021奔驰e300l哪个配置性价比高 发布:2025-01-31 07:47:14 浏览:656
sqlserver2008光盘 发布:2025-01-31 07:32:13 浏览:578