品易云推流 关闭
文章详情页
文章 > Python常见问题 > 别人怎么用我的Python程序

别人怎么用我的Python程序

头像

月亮邮递员

2020-03-23 17:38:484147浏览 · 0收藏 · 0评论

别人怎么用我的Python程序

这里讲的给别人用,不是指将你的代码开源,也不是指给另一个程序员用。比如你写了一个小工具,想给别人用,总不能叫别人也去装python吧。

让别人不装Python环境就可以使用Python编写的程序,可以将Python程序打包.exe可执行程序,然后发给他人。

推荐学习《Python教程》。

Python打包生成.exe文件的工具有:

1、py2exe

使用:

先写一个简单的脚本,文件名:helloworld.py

#!/usr/bin/env python  # -*- coding: utf-8 -*-  
  def say_hello(name):  
    print("Hello, " + name)
  if __name__ == "__main__":  
    name = input("What's your name:")
    say_hello(name)

还需要个用于发布程序的设置脚本:mysetup.py,在其中的 setup 函数前插入语句 import py2exe。

from distutils.core import setupimport py2exe
setup(console=["helloworld.py"])

2、cx_Freeze

使用:cxfreeze main.py --target-dir dist

Usage: cxfreeze [options] [SCRIPT]

Freeze a Python script and all of its referenced modules to a base
executable which can then be distributed without requiring a Python
installation.

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -O                    optimize generated bytecode as per PYTHONOPTIMIZE; use
                        -OO in order to remove doc strings
  -c, --compress        compress byte code in zip files
  -s, --silent          suppress all output except warnings and errors
  --base-name=NAME      file on which to base the target file; if the name of
                        the file is not an absolute file name, the
                        subdirectory bases (rooted in the directory in which
                        the freezer is found) will be searched for a file
                        matching the name
  --init-script=NAME    script which will be executed upon startup; if the
                        name of the file is not an absolute file name, the
                        subdirectory initscripts (rooted in the directory in
                        which the cx_Freeze package is found) will be searched
                        for a file matching the name
……
……
……

3、PyInstaller

使用:pyinstaller demo.py

微信截图_20200323173134.png

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图