一:Python 模块,包,库的概念理解:

1.python模块是:

python模块:包含并且有组织的代码片段为模块。

表现形式为:写的代码保存为文件。这个文件就是一个模块。sample.py 其中文件名smaple为模块名字。

2.python包是:

包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境。
通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init__.py文件和其它模块或子包。

常见问题:

引入某一特定路径下的模块

使用sys.path.append(yourmodulepath)

将一个路径加入到python系统路径下,避免每次通过代码指定路径

利用系统环境变量 export PYTHONPATH=$PYTHONPATH:yourmodulepath,

直接将这个路径链接到类似/Library/Python/2.7/site-packages目录下

好的建议:

经常使用if __name__ == '__main__',保证写包既可以import又可以独立运行,用于test。

多次import不会多次执行模块,只会执行一次。可以使用reload来强制运行模块,但不提倡。

常见的包结构如下:

package_a
├── __init__.py
├── module_a1.py
└── module_a2.py
package_b
├── __init__.py
├── module_b1.py
└── module_b2.py

main.py

如果main.py想要引用packagea中的模块modulea1,可以使用:

from package_a import module_a1

import package_a.module_a1

如果packagea中的modulea1需要引用packageb,那么默认情况下,python是找不到packageb。我们可以使用sys.path.append('../'),可以在packagea中的__init__.py添加这句话,然后该包下得所有module都添加* import
__init_即可。

 3.库(library)

库的概念是具有相关功能模块的集合。这也是Python的一大特色之一,即具有强大的标准库、第三方库以及自定义模块。

二:Python的基本库与第三方库的区别

1、python的标准库是随着pyhon安装的时候默认自带的库;

2、python的第三方库,需要下载后安装到python的安装目录下。不同的第三方库安装及使用方法不同。

3、它们调用方式是一样的,都需要用import语句调用。简单的说,一个是默认自带不需要下载安装的库,一个是需要下载安装的库。它们的调用方式是一样的。

三:Python第三方库的安装

1. pip安装:
pip安装相信大家都不陌生了,在安装第三方库中,pip是最常使用的一种方法。
# 在python2中使用pip安装
pip install 库名
如:pip install numpy
# 在python3中使用pip安装
pip3 install 库名
如:pip3 install numpy

直接使用pip安装是最便捷的方式,还能指定安装版本

# 安装版本为2.8.7的robotframework库

pip install robotframework==2.8.7
pip3 install robotframework==2.8.7

但也会存在一个问题,就是速度慢,因为文件都在国外服务器上,所以下载速度会很慢,这时候我们就可以使用豆瓣源,速度是跟坐火箭一样快。

pip2 install -i https://pypi.douban.com/simple/ 库名
pip3 install -i https://pypi.douban.com/simple/ 库名
# 记得是https,网上一些地方还是写着http,现在已经过时了

当然,如果你不想每次都要输入豆瓣源的网址,你可以直接在python的环境中配好,下面的配置方法是针对Python3.6.5在Win10环境下

C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Lib\site-packages\pip\_internal\models\index.py

打开Python目录下的

lib\site-packages\pip\_internal\models\index.py,

修改PyPI的地址为https://pypi.douban.com/

PyPI = Index('https://pypi.douban.com/')

这样,你下次只需要pip3 install 库名 就能只能从豆瓣源中获取资源。

Python2的的index.py也是在pip文件夹下,但具体位置跟3会有点区别。

2. whl安装

有时候,你在使用pip安装时会报错各种各样的错,那这时候你可能需要使用whl安装了,whl是离线安装,你需要将文件下载到本地后进行安装。那whl文件可以从哪获取呢?你可以在Python的官网下载,也可以在其他地方,这里我给大家推荐一个网址,上面的资源还是比较齐全,基本上你要的都能找到,但不是官方网址,所以用不用还需自己衡量。

https://www.lfd.uci.edu/~gohlke/pythonlibs/

在使用whl在之前,我们需要先在python中安装好wheel

pip3 install wheel

然后在命令行下执行

# 打开whl文件所在文件夹
cd C:\Users\Administrator\Documents\Tencent Files\FileRecv(文件夹位置)
# 安装
pip3 install xxx.whl(文件名称)

3. 源码安装

源码安装一般我是从github上下载所需的包的源码,如下图的Django
下载后是一个文件夹,里面会有个setup.py的文件,我只需要执行这个文件就可以了安装了。
# 打开setup.py文件所在文件夹
cd C:\Users\Administrator\Documents\Tencent Files\Django(文件夹位置)
# 安装
python setup.py install
        以上就是我们常用的安装第三方库的方法,一般的方便程度都是pip -> whl -> 源码 ,当然也是根据大家的实际情况进行判断的。

Python的基本库与第三方库的更多相关文章

  1. Python标准库与第三方库详解(转载)

    转载地址: http://www.codeweblog.com/python%e6%a0%87%e5%87%86%e5%ba%93%e4%b8%8e%e7%ac%ac%e4%b8%89%e6%96%b ...

  2. Python学习笔记011_模块_标准库_第三方库的安装

    容器 -> 数据的封装 函数 -> 语句的封装 类 -> 方法和属性的封装 模块 -> 模块就是程序 , 保存每个.py文件 # 创建了一个hello.py的文件,它的内容如下 ...

  3. Python入门:如何使用第三方库?

    这是关于Python的第13篇文章,也是关于<编程小白的第1本Python入门书>内容的最后一篇,主要介绍下如何使用第三方库. 1. 第三方库 Python相当于一个手机,第三方库相当于手 ...

  4. Python升级已经安装的第三方库

    Python升级已经安装的第三方库 主要两步操作,查看需要升级库,升级库.如下: pip list # 列出安装的库 pip list --outdated # 列出有更新的库 pip install ...

  5. Python常用的标准库以及第三方库

    Python常用的标准库以及第三方库有哪些?   20个必不可少的Python库也是基本的第三方库 读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们 ...

  6. Python 标准库、第三方库

    Python 标准库.第三方库 Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写 ...

  7. 模块初识2-模块的默认保存路径Python36-32\\lib\\site-packages,Python36-32\,标准库和第三方库

    import 可以直接导入当前目录的其他脚本 如果你把login.py移动到new_dir的目录下,那么就会提示找不到模块: 要解决这个问题,有两个方法: 1.把login.py复制到C:\\User ...

  8. Python在Windows下安装第三方库浅谈

    在用python编写代码时,往往需要用到第三方库,那么python如何去用第三方库呢,首先我们先来看看是如何安装的,方法可能会很多,但这边只介绍一种,其它请百度或google 比如asyncio,这里 ...

  9. python --- 协程编程(第三方库gevent的使用)

    1. 什么是协程? 协程(coroutine),又称微线程.协程不是线程也不是进程,它的上下文关系切换不是由CPU控制,一个协程由当前任务切换到其他任务由当前任务来控制.一个线程可以包含多个协程,对于 ...

随机推荐

  1. Caused by java.lang.IllegalStateException Not allowed to start service Intent { cmp=com.x.x.x/.x.x.xService }: app is in background uid UidRecord(一)

    Caused by java.lang.IllegalStateException Not allowed to start service Intent { cmp=com.x.x.x/.x.x.x ...

  2. oracle 备份恢复篇(六)---基于12c的pdb备份与恢复

    一,备份前提描述 SQL> show con_name CON_NAME ------------------------------ CDB$ROOT SQL> archive log ...

  3. JavaScript 浮点数及运算精度调整总结

    JavaScript 浮点数及运算精度调整总结 JavaScript 只有一种数字类型 Number,而且在Javascript中所有的数字都是以IEEE-754标准格式表示的.浮点数的精度问题不是J ...

  4. vuex中filter的使用 && 快速判断一个数是否在一个数组中

    vue中filter的使用 computed: mapState({ items: state => state.items.filter(function (value, index, arr ...

  5. TOJ 1885 Triangles

    Description It is always very nice to have little brothers or sisters. You can tease them, lock them ...

  6. 深入理解jQuery插件开发【转】

    如果你看到这篇文章,我确信你毫无疑问会认为jQuery是一个使用简便的库.jQuery可能使用起来很简单,但是它仍然有一些奇怪的地方,对它基本功能和概念不熟悉的人可能会难以掌握.但是不用担心,我下面已 ...

  7. mysql 存储过程(proceduce)查询一个表的结果插入另外一个表

    公司的时间戳存证业务,对发版过程中间数据处理需要用到存储过程.对此做一个简短记录,以免遗忘. DROP procedure record_timestamp_deal ; ##创建存储过程 creat ...

  8. [转]谷歌Chrome浏览器开发者工具教程—JS调试篇

    来源:http://blog.csdn.net/cyyax/article/details/51242720 上一篇我们学习了谷歌Chrome浏览器开发者工具的基础功能,下面介绍的是Chrome开发工 ...

  9. Mysql5.7的安装配置问题

    前些日子安装和配置mysql,遇到一些问题,在这里记录一下. 1.首先,把zip的mysql解压. 2.设置环境变量PATH中添加你的mysql解压目录. 3.在mysql根目录下新建my.ini文件 ...

  10. mysql四:数据操作

    一.介绍 MySQL数据操作: DML ======================================================== 在MySQL管理软件中,可以通过SQL语句中的 ...