Python的基本库与第三方库
一: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的基本库与第三方库的更多相关文章
- 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 ...
- Python学习笔记011_模块_标准库_第三方库的安装
容器 -> 数据的封装 函数 -> 语句的封装 类 -> 方法和属性的封装 模块 -> 模块就是程序 , 保存每个.py文件 # 创建了一个hello.py的文件,它的内容如下 ...
- Python入门:如何使用第三方库?
这是关于Python的第13篇文章,也是关于<编程小白的第1本Python入门书>内容的最后一篇,主要介绍下如何使用第三方库. 1. 第三方库 Python相当于一个手机,第三方库相当于手 ...
- Python升级已经安装的第三方库
Python升级已经安装的第三方库 主要两步操作,查看需要升级库,升级库.如下: pip list # 列出安装的库 pip list --outdated # 列出有更新的库 pip install ...
- Python常用的标准库以及第三方库
Python常用的标准库以及第三方库有哪些? 20个必不可少的Python库也是基本的第三方库 读者您好.今天我将介绍20个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们 ...
- Python 标准库、第三方库
Python 标准库.第三方库 Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写 ...
- 模块初识2-模块的默认保存路径Python36-32\\lib\\site-packages,Python36-32\,标准库和第三方库
import 可以直接导入当前目录的其他脚本 如果你把login.py移动到new_dir的目录下,那么就会提示找不到模块: 要解决这个问题,有两个方法: 1.把login.py复制到C:\\User ...
- Python在Windows下安装第三方库浅谈
在用python编写代码时,往往需要用到第三方库,那么python如何去用第三方库呢,首先我们先来看看是如何安装的,方法可能会很多,但这边只介绍一种,其它请百度或google 比如asyncio,这里 ...
- python --- 协程编程(第三方库gevent的使用)
1. 什么是协程? 协程(coroutine),又称微线程.协程不是线程也不是进程,它的上下文关系切换不是由CPU控制,一个协程由当前任务切换到其他任务由当前任务来控制.一个线程可以包含多个协程,对于 ...
随机推荐
- web安全漏洞种类
(参考知道创宇) SQL注入: SQL注入(SQL Injection),是一个常见的发生于应用程序和数据库之间的web安全漏洞,由于在开发过程中的设计不当导致程序中忽略了检查,没有有效的过滤用户的输 ...
- yum lnmp全家桶
######################################################### #by:kingle # #use: lnmp # #version:1.0 # # ...
- (转)Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
原文:http://blog.51cto.com/freeloda/1288553 大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Ng ...
- 手指静脉细化算法过程原理解析 以及python实现细化算法
原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/8672489.html 文中的一些图片以及思想很多都是参考https://www.cnblogs ...
- Mysql系列-字符集
字符集 怎样选择合适的字符集 如果应用程序需要发布到很多国家和地区,需要支持各种各样的文字,则选择Unicode编码,Mysql中即UTF-8.q如果需要将数据导入数据库,这时候要注意数据库字符集对数 ...
- java collection与数组(Array)互转
先确定几个概念,这里说的数组元素,除基本类型数组外,并非指元素对象本身,而是它们的引用.换句话说,基本数组的元素是数值本身,非基本数组的元素都是一个地址(对应指针). 1.collection的元素不 ...
- CSS 专业的技巧
目录 专业的技巧 支持情况 贡献准则 专业的技巧 使用CSS复位 继承 box-sizing 使用 :not() 选择器来决定表单是否显示边框 为 body 元素添加行高 垂直居中任何元素 逗号分 ...
- python搭建本地服务器
python搭建本地服务器 python3以上版本 'python3 -m http.server 8000' 默认是8000端口,可以指定端口,打开浏览器输入http://127.0.0.1:800 ...
- 静态化HttpClient
实现方法: public class HttpClientHelper { private static HttpClient _client; public static HttpClient Ge ...
- 深入Java字符串
深入Java字符串 Java字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生. 一.从根本上认识java.lang ...