python中如何使用pip安装自己的第三方模块

系统:CentOS6.8    python版本:python3.5

文本编辑器:vim

python中我们很多时候,需要将自己的py文件导入到python路径中,但是我们自己的文件自身并不在python默认的库文件路径下,这时候就需要我们自己将我们的py文件import进入了

下面示例怎么导入自己的第三方模块,我们首先需要自己创建一个.py文件,名字随意明名了,但是不要和python内部模块重命,内部模块路径在/usr/lib/python3.5/site-packages。要不然使用python提供的一些模块的方法时就悲剧了。

我们写代码看看一个列表是否是含有列表嵌套,如果有嵌套,就拆开输出,环境python3,命名为liname.py

#!/usr/bin/env python3
    def print_list(the_list):              传出一个列表参数
        for item in the_list:           挨个遍历列表元素
            if isinstance(item,list):      判断每个元素是否为列表
                print_list(item)       调用自身做
            else:
                print(item)

我们想要将这个.py文件变成一个模块,我们可以使用Python包索引(Python Package Index,PyPI)这 样一个互联网中第三库的集中管理,我们首先创建一个目录,名字还是随意啊,比如就叫dog

在这个目录中创建一个名字为setup.py的文件,文件内容如下所示:

   现在dog这个目录中已经包含了两个文件setup.py和lsname.py这个文件,我们在终端中输入命令:
   python3 setup.py sdist  ,然后目录下会多出几个文件和目录,如图所示

 然后我们使用命令: python3 setup.py install 安装

然后我们再python3的交互式命令行下导入模块,输入一个列表,然后调用,会触发下列异常

这是因为我们的python的主程序中的代码模块与一个名为__main__的命名空间关联,将代码放在其单独的模块中时,python会自动创建与模块同名的命名空间。因此我们的模块中的代码会与一个名为liname的命名空间关联

我们刚进入到python的交互式命令行的时候是和__main__这个命名空间相关联的,我们想要使用liname这个空间的print_list方法时不能单纯的使用这个函数,而需要这样使用liname.print_list()这样子使用,比如:

这样子就完全没有问题了。

如果我们自己本身写了一段很好的代码,想将它贡献出去,除了github外,我们可以放在pypi这个网站上,也就是我们使用pip或者easy_install这样的命令安装

我们先在PyPI网站上(http://pypi.python.org/),来注册我们的信息

注册完成后我们就开始向PyPI上传我们的代码,上传时我们要知道我们注册时的账号和密码,因为接下来会用到 

因为我没什么好的代码贡献所以,后面的步骤略去,进行完了这些步骤,我们就可以上传了,

我们使用命令:python3 setup.py upload

至此我们自己写的代码就贡献给了PyPI社区,别人如果想要安装我们这个模块,就可以通过pip或者easy_install这种方式来安装我们的模块了

时间: 2024-10-29 04:33:05

python中如何使用pip安装自己的第三方模块的相关文章

Python中如何用pip安装外部主机文件

在python中安装非自带python模块,有三种方式: easy_install pip 下载压缩包(.zip, .tar, .tar.gz)后解压, 进入解压缩的目录后执行python setup.py install命令 本文主要针对pip安装时可能会碰到的一种情况,及解决办法: 假如我要安装pylint模块,该模块非python自带模块,用import肯定不能导入,需要额外安装 >>> import pylint Traceback (most recent call last)

Python中Virtualenv和pip如何使用?

本文和大家分享的主要是python 中Virtualenv 和 pip的使用相关内容,一起来看看吧,希望对大家 学习python有所帮助. 0X00 安装环境 我们在Python 开发和学习过程中需要用到各种库,然后在各个不同的项目和作品里可能用的版本还不一样,正因为有这种问题的存在才催生了  virtualenv  的诞生.virtualenv 可以在电脑上创建一个虚拟环境,可以针对每一个项目创建一个虚拟环境,这样就不用担心各个不同的项目用不同版本的库的时候出现的冲突了.  下面的内容只适用于

Python:Pycharm下无法导入安装好的第三方模块?

Pycharm下无法导入安装好的第三方模块requests? 在cmd下使用pip安装好requests模块后,可以使用import requests,但在Pycharm IDE下无法导入,出现如下错误: >>> import requests Traceback (most recent call last): File "<input>", line 1, in <module> File "C:\Program Files (x

python中关于不执行if __name__ == &#39;__main__&#39;:测试模块的解决

1.新建测试脚本文件: 2.编辑测试脚本 import unittest import requests import json import HTMLTestRunner ur1 = 'http://118.178.247.67:8081/systLogonUser/adminLogon.do' headers = {'Content-Type':'application/x-www-form-urlencoded','Referer':'118.178.247.67'} data = { '

Python中scrapy框架如何安装配置

在python学习群里发现很多学习网络爬虫技术的童靴都搞不懂python爬虫框架scrapy的安装配置,在学习python网络爬虫初级阶段的时候我们利用urllib和urllib2库以及正则表达式就可以完成了,不过遇到更加强大的爬虫工具--爬虫框架Scrapy,这安装过程也是煞费苦心哪,在此整理如下. Windows平台: 我的系统是Win7,首先,你要有Python,我用的是2.7.7版本,Python3相仿,只是一些源文件不同. 官网文档:http://doc.scrapy.org/en/l

python中nltk的下载安装方式

首先去http://nltk.org/install.html下载相关的安装程序,然后 在cmd窗口中,进入到python的文件夹内的 Scripts内,运行easy_install pip 安装PyYAML and NLTK:pip install pyyaml nltk 这样就将nltk安装完成,安完可以测试下. 然后敲入下面的代码,进入NLTK数据源下载界面: import nltk nltk.download() 选择all,设置好下载路径(Download Directory),然后点

python包管理之Pip安装及使用

Python有两个著名的包管理工具easy_install.py和pip.在Python2.7的安装包中,easy_install.py是默认安装的,而pip需要我们手动安装. pip可以运行在Unix/Linux, OS X, and Windows平台上,支持CPython versions 2.6, 2.7, 3.1, 3.2, 3.3, 3.4 and also pypy. [Download] 下载pip的安装包get-pip.py,下载地址:https://pip.pypa.io/e

python中使用pycharm2018工具安装Autopep8

PEP 8,Style Guide for Python Code,是Python官方推出编码约定,主要是为了保证 Python 编码的风格一致,提高代码的可读性. 这样的资料网上很多,但是大多都是老版本的,2018版本之前.我使用的是最新版,有很多改动:详细配置参见:有两篇文章写得比较符合我的版本:1.确保两个问题,你的机器已经安装python2.7和pycharm20182.同时要安装autopep8.exe在windown的cmd命令行中运行:pip install autopep8即可下

pip 安装特定版本的模块

要用 pip 安装特定版本的 Python 包,只需通过 == 操作符 指定,例如: pip install -v pycrypto==2.3 将安装 pycrypto 2.3 版本.