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

相关文章

利用Python的turtle库绘制玫瑰教程

利用Python的turtle库绘制玫瑰教程

turtle的文档:https://docs.python.org/3/library/turtle.html 用Python的turtle库绘图是很简单的,闲来无事就画了一个玫瑰花,下...

pyqt远程批量执行Linux命令程序的方法

pyqt远程批量执行Linux命令程序的方法

写了个小程序: 功能 1.测试远程ssh连接是否成功, 2.批量执行远程ssh命令 效果如下: 代码如下: #-*- coding:utf-8 -*- import sys fro...

Python 3.8中实现functools.cached_property功能

前言 缓存属性( cached_property )是一个非常常用的功能,很多知名Python项目都自己实现过它。我举几个例子: bottle.cached_property Bottl...

Python中最大最小赋值小技巧(分享)

码代码时,有时候需要根据比较大小分别赋值: import random seq = [random.randint(0, 1000) for _ in range(100)] #方法...

pandas把dataframe转成Series,改变列中值的类型方法

使用 pd.Series把dataframe转成Series ts = pd.Series(df['Value'].values, index=df['Date']) 使用asty...