python包安装及安装包制作
2017-04-24 10:47
246 查看
1. 单文件模块:直接把文件拷贝到$python_dir/lib 这是类库目录(可直接将单文件或单包放在这里)
2. 多文件模块,带setup.py:python setup.py install 卸载时只能手动删除,一般安装在系统类库目录下
python setup.py install --record files.txt 记录安装后文件的路径 (卸载cat files.txt | xargs rm -rf 删除这些文件)
3.easy_install 方式
1) 下载ez_setup.py,运行python ez_setup
2) easy_install packageName
easy_install package.egg
easy_install *.egg
4.pip 方式
先进行pip工具的安裝:easy_install pip(pip 可以通过easy_install 安裝,而且也会装到 Scripts 文件夹下。)
安裝:pip install PackageName
更新:pip install -U PackageName
移除:pip uninstall PackageName
搜索:pip search PackageName
5.自制setup.py安装包
虽然Python的模块可以拷贝安装,但是一般情况下推荐制作一个安装包,即写一个setup.py文件来安装。
setup.py文件的使用:
% python setup.py build #编译
% python setup.py install #安装
% python setup.py sdist #制作分发包
% python setup.py bdist_wininst #制作windows下的分发包
% python setup.py bdist_rpm
setup.py文件的编写:
setup.py中主要执行一个 setup函数,该函数中大部分是描述性东西,最主要的是packages参数,列出所有的package,可以用自带的find_packages来动态获取package。所以setup.py文件的编写实际是很简单的。
简单的例子:
(1).假设你要分发一个叫foo的模块,文件名foo.py
{import sys
def get():
return sys.path
},
那么setup.py内容如下:
from distutils.core import setup
#from setuptools import setup, find_packages
setup(name='foo',
version='1.0',
py_modules=['foo'],
)
(2).然后,运行python setup.py sdist为模块创建一个源码包
在当前目录下,会创建dist目录,里面有个文件名为foo-1.0.tar.gz,这个就是可以分发的包(如果使用命令python setup.py bdist_egg,那么会在dist目录中生成foo-1.0-py2.7.egg包,setup.py中第一句引入需要改为from setuptools import setup)。使用者拿到这个包后,解压,到foo-1.0目录下执行:python setup.py install,那么,foo.py就会被拷贝到python类路径下,可以被导入使用(如果安装是egg文件,会把egg文件拷贝到dist-packages目录下)。
安装包文件:
(1).假设你要分发mypackage包,将包文件放在script目录下
那么setup.py内容如下:from distutils.core import setup#from setuptools import setup, find_packagessetup(name='mypackage',
version="1.0",
author="liujin3",
#scripts=["scripts/otpauth.py","scripts/OtpAuthNSF.py"],
packages = ["mypackage",],
package_dir ={ "mypackage": "scripts/mypackage" },
py_modules=['foo',],#包中需要可见的模块
description='Implements two-step verification of TOTP',
long_description=fread('README.rst'),
license='BSD',
platforms='any',
tests_require=['nose'],
test_suite='nose.collector',
)(2).然后,运行python setup.py sdist为模块创建一个源码包在当前目录下,会创建dist目录,里面有个文件名为mypackage-1.0.tar.gz,这个就是可以分发的包(如果使用命令python setup.py bdist_egg,那么会在dist目录中生成foo-1.0-py2.7.egg包,setup.py中第一句引入需要改为from setuptools import setup)。使用者拿到这个包后,解压,到mypackage-1.0目录下执行:python setup.py install,那么,foo.py就会被拷贝到python类路径下,可以被导入使用(如果安装是egg文件,会把egg文件拷贝到dist-packages目录下)。
具体细节,参考otpauth-1.0.1.tar.gz的模板
python 包安装没有这么复杂,参考https://www.cnblogs.com/maociping/p/6633948.html
2. 多文件模块,带setup.py:python setup.py install 卸载时只能手动删除,一般安装在系统类库目录下
python setup.py install --record files.txt 记录安装后文件的路径 (卸载cat files.txt | xargs rm -rf 删除这些文件)
3.easy_install 方式
1) 下载ez_setup.py,运行python ez_setup
2) easy_install packageName
easy_install package.egg
easy_install *.egg
4.pip 方式
先进行pip工具的安裝:easy_install pip(pip 可以通过easy_install 安裝,而且也会装到 Scripts 文件夹下。)
安裝:pip install PackageName
更新:pip install -U PackageName
移除:pip uninstall PackageName
搜索:pip search PackageName
5.自制setup.py安装包
虽然Python的模块可以拷贝安装,但是一般情况下推荐制作一个安装包,即写一个setup.py文件来安装。
setup.py文件的使用:
% python setup.py build #编译
% python setup.py install #安装
% python setup.py sdist #制作分发包
% python setup.py bdist_wininst #制作windows下的分发包
% python setup.py bdist_rpm
setup.py文件的编写:
setup.py中主要执行一个 setup函数,该函数中大部分是描述性东西,最主要的是packages参数,列出所有的package,可以用自带的find_packages来动态获取package。所以setup.py文件的编写实际是很简单的。
简单的例子:
(1).假设你要分发一个叫foo的模块,文件名foo.py
{import sys
def get():
return sys.path
},
那么setup.py内容如下:
from distutils.core import setup
#from setuptools import setup, find_packages
setup(name='foo',
version='1.0',
py_modules=['foo'],
)
(2).然后,运行python setup.py sdist为模块创建一个源码包
在当前目录下,会创建dist目录,里面有个文件名为foo-1.0.tar.gz,这个就是可以分发的包(如果使用命令python setup.py bdist_egg,那么会在dist目录中生成foo-1.0-py2.7.egg包,setup.py中第一句引入需要改为from setuptools import setup)。使用者拿到这个包后,解压,到foo-1.0目录下执行:python setup.py install,那么,foo.py就会被拷贝到python类路径下,可以被导入使用(如果安装是egg文件,会把egg文件拷贝到dist-packages目录下)。
安装包文件:
(1).假设你要分发mypackage包,将包文件放在script目录下
那么setup.py内容如下:from distutils.core import setup#from setuptools import setup, find_packagessetup(name='mypackage',
version="1.0",
author="liujin3",
#scripts=["scripts/otpauth.py","scripts/OtpAuthNSF.py"],
packages = ["mypackage",],
package_dir ={ "mypackage": "scripts/mypackage" },
py_modules=['foo',],#包中需要可见的模块
description='Implements two-step verification of TOTP',
long_description=fread('README.rst'),
license='BSD',
platforms='any',
tests_require=['nose'],
test_suite='nose.collector',
)(2).然后,运行python setup.py sdist为模块创建一个源码包在当前目录下,会创建dist目录,里面有个文件名为mypackage-1.0.tar.gz,这个就是可以分发的包(如果使用命令python setup.py bdist_egg,那么会在dist目录中生成foo-1.0-py2.7.egg包,setup.py中第一句引入需要改为from setuptools import setup)。使用者拿到这个包后,解压,到mypackage-1.0目录下执行:python setup.py install,那么,foo.py就会被拷贝到python类路径下,可以被导入使用(如果安装是egg文件,会把egg文件拷贝到dist-packages目录下)。
具体细节,参考otpauth-1.0.1.tar.gz的模板
python 包安装没有这么复杂,参考https://www.cnblogs.com/maociping/p/6633948.html
相关文章推荐
- 制作Python的安装模块
- [转]一次.NET Web应用程序安装包的制作经历:Sql数据库安装的3种方式 配置IIS及Web.Config文件
- vs2005制作安装包(自动安装.net framework 2.0)(小寿原创)
- [转].Net Web项目安装包制作 (二)数据库安装、其他组件的安装
- .Net Web项目安装包制作 (二)数据库安装、其他组件的安装
- [转贴]用Vs.net制作安装程序,在安装包中自动为客户创建数据库
- 制作python模块安装包(转)
- 制作Linux下程序安装包——使用脚本打包bin、run等安装包
- (转)winform安装项目、安装包的制作、部署
- Net Web项目安装包制作 (二)数据库安装、其他组件的安装
- [转]一次.NET Web应用程序安装包的制作经历:Sql数据库安装的3种方式 配置IIS及Web.Config文件
- 利用InstallShield12制作安装包之四:隐藏准备安装界面
- python整理二十七——egg文件制作与安装
- 制作Linux下程序安装包——使用脚本打包bin、run等安装包
- winform安装项目、安装包的制作、部署
- 自动安装金山词霸2005和制作金山词霸2003安装包
- .NET Web应用程序安装包的制作经历:Sql数据库安装的3种方式
- winform安装项目、安装包的制作、部署
- NET Web应用程序安装包的制作经历:Sql数据库安装的3种方式 配置IIS及Web.Config文件
- ASP.NET 项目安装包制作(二)数据库安装、其他组件的安装