Python代码的打包与发布详解

yipeiwu_com6年前Python基础

在python程序中,一个.py文件被当作一个模块,在各个模块中定义了不同的函数。当我们要使用某一个模块中的某一个函数时,首先须将这个模块导入,否则就会出现函数未定义的情况.

下面记录的是打包及安装包的方法。

本文示例是建立一个模拟登录的程序:

logIn.py文件代码如下:

pwd=int(raw_input('please input your passward: '))
if pwd==123:
  print 'success'
else:
  print 'error'

一、打包

1.先建立一个文件夹,这个文件夹用来存放我们将要用于发布的.py文件,(现在我们建立一个文件夹名为distribution,将logIn.py放在这个文件夹中)

2.在distribution文件夹中新建一个 setup.py文件代码如下:

from distutils.core import setup
setup(
 name='logIn',  #这个是最终打包的文件名
 version='1.0.0',
 py_modules=['logInr'], #要打包哪些,.py文件,
 )

3.在最终中,cd到这个distrbution文件夹中,然后运动行如下命令:

python setup.py sdist

这样在文件夹中就多出了几个文件,在dist文件夹中的,logIn-1.0.0.tar.gz就是我们的发布包了;

二、安装包到本地副本中:

sudo python setup.py install

路径为:/usr/local/lib/python2.7/dist-packages

相关文章

Pycharm运行加载文本出现错误的解决方法

Pycharm运行加载文本出现错误的解决方法

Pycharm打开大文件的时候出现这个错误,根据提示以及百度知道,是因为IDEA对能关联的文件大小做了限制,主要是为了保护内存,默认值为2500kb。然后根据百度上的教程修改 修改bin...

Python下调用Linux的Shell命令的方法

有时候难免需要直接调用Shell命令来完成一些比较简单的操作,比如mount一个文件系统之类的。那么我们使用Python如何调用Linux的Shell命令?下面来介绍几种常用的方法: 1...

操作Windows注册表的简单的Python程序制作教程

通过Python操作注册表有两种方式,第一种是通过Python的内置模块 _winreg;另一种方式就是Win32 Extension For Python 的win32api模块,但是...

快速解决vue.js 模板和jinja 模板冲突的问题

快速解决vue.js 模板和jinja 模板冲突的问题

jinjia和vue.js默认的模板转义符都是{{}} 目前的解决办法是修改vue.js的转义符,将原来的{{}}替换为其他标签,我改为{[]} 版本1.x和2.x方法如下 //...

python使用Berkeley DB数据库实例

本文实例讲述了python使用Berkeley DB数据库的方法,分享给大家供大家参考。 具体实现方法如下: try: from bsddb import db except...