关于python导入模块import与常见的模块详解


Posted in Python onAugust 28, 2019

0.什么是python模块?干什么的用的?

Java中如果使用abs()函数,则需要需要导入Math包,同样python也是封装的,因为python提供的函数太多,所以根据函数的功能将其封装在不同的module模块中。就这样的话,pthon提供的module还是海量的,所以除非使用某个模块里的某个函数时才会将其导入程序中。所以你使用某个函数前,要先知道他在哪个module里,然后将这个模块导入当前程序,然后才能调用这个模块里的函数。

当然 python的模块分为用户自定义的和系统提供的。Python提供一套很有用的标准库(standard library)。标准库会随着Python解释器,绑定在python的安装包里,直到装载到你的操作系统里。 它是Python的一个组成部分。这些标准库是Python为你准备好的利器,可以让我们编程事半功倍。

1.python中使用关键字import来导入module

import math
import time,calendar #同时导入多个模块

2. 或者from...import 来导入相应的模块

从某个模块中导入某个函数,格式为: from somemodule import somefunction
从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
将某个模块中的全部函数导入,格式为: from somemodule import *

from math import sqrt,acos
from time import daylight
from math import *

3.导入自定义模块和reload模块

#1.导入一个python模块时,python解释器是如何查找这个模块是否存在的?python解释器的默认查找路径?
可以使用如下命令sys.path进行查看,python默认的查找路径.因为我这里python装在D盘,实际开发中一般部署在linux上。
可以看出pathon默认的查找路径返回的是一个列表。
>>> import sys
>>> sys.path
['', 
'D:\\software\\python3\\python36.zip', 
'D:\\software\\python3\\DLLs', 
'D:\\software\\python3\\lib', 
'D:\\software\\python3', 
'D:\\software\\python3\\lib\\site-packages']
从上面列出的目录里依次查找要导入的模块文件
',' 表示当前路径
 
#2.如果想修改python默认的查找路径,比如增加自定义的查找路径 ,修改顺序等。
sys.path.append('D:\\pythonworkspace\\\\pythontest') #因为sys.path返回值是列表,可以追加
sys.path.insert(0, 'D:\\pythonworkspace\\\\pythontest') #可以确保先搜索这个路径
 
#3.注意模块导入后,如果修改以后,要想生效,需要重新导入。但是重新导入用的不是import
>>> from imp import *
>>> reload(sys) #使用imp 模块里的reload()命令,对模块重新导入
<module 'sys' (built-in)>
>>>

4.python常见的模块,具体全部库参考python官网。

标准库 说明
builtins 内建函数默认加载
os 操作系统接口
sys Python自身的运行环境
functools 常用的工具
json 编码和解码 JSON 对象
logging 记录日志,调试
multiprocessing 多进程
threading 多线程
copy 拷贝
time 时间
datetime 日期和时间
calendar 日历
hashlib 加密算法
random 生成随机数
re 字符串正则匹配
socket 标准的 BSD Sockets API
shutil 文件和目录管理
glob 基于文件通配符搜索

具体每个模块有哪些常用地函数,如何使用,后面会随着开发的学习逐步带入到程序中讲解

扩展库 说明
requests 使用的是 urllib3,继承了urllib2的所有特性
urllib 基于http的高层库
scrapy 爬虫
beautifulsoup4 HTML/XML的解析器
celery 分布式任务调度模块
redis 缓存
Pillow(PIL) 图像处理
xlsxwriter 仅写excle功能,支持xlsx
xlwt 仅写excle功能,支持xls ,2013或更早版office
xlrd 仅读excle功能
elasticsearch 全文搜索引擎
pymysql 数据库连接库
mongoengine/pymongo mongodbpython接口
matplotlib 画图
numpy/scipy 科学计算
django/tornado/flask web框架
xmltodict xml 转 dict
SimpleHTTPServer 简单地HTTP Server,不使用Web框架
gevent 基于协程的Python网络库
fabric 系统管理
pandas 数据处理库
scikit-learn 机器学习库

以上这篇关于python导入模块import与常见的模块详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 生成器生成杨辉三角的方法(必看)
Apr 10 Python
Django原生sql也能使用Paginator分页的示例代码
Nov 15 Python
python爬虫爬取某站上海租房图片
Feb 04 Python
Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码
Mar 04 Python
python 获取list特定元素下标的实例讲解
Apr 09 Python
python内存动态分配过程详解
Jul 15 Python
在python Numpy中求向量和矩阵的范数实例
Aug 26 Python
使用python将excel数据导入数据库过程详解
Aug 27 Python
用Python画小女孩放风筝的示例
Nov 23 Python
在python中计算ssim的方法(与Matlab结果一致)
Dec 19 Python
浅谈django channels 路由误导
May 28 Python
Python pandas之求和运算和非空值个数统计
Aug 07 Python
Python datetime包函数简单介绍
Aug 28 #Python
解决python有时候import不了当前的包问题
Aug 28 #Python
Python 多线程其他属性以及继承Thread类详解
Aug 28 #Python
Python 动态导入对象,importlib.import_module()的使用方法
Aug 28 #Python
Python 共享变量加锁、释放详解
Aug 28 #Python
Python使用百度api做人脸对比的方法
Aug 28 #Python
linux下python中文乱码解决方案详解
Aug 28 #Python
You might like
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
php与flash as3 socket通信传送文件实现代码
2014/08/16 PHP
PHP遍历数组的方法汇总
2015/04/30 PHP
PHP编程中尝试程序并发的几种方式总结
2016/03/21 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
IE8 浏览器Cookie的处理
2009/01/31 Javascript
动态创建script标签实现跨域资源访问的方法介绍
2014/02/28 Javascript
在Linux上用forever实现Node.js项目自启动
2014/07/09 Javascript
基于javascript的COOkie的操作实现只能点一次
2014/12/26 Javascript
JavaScript学习笔记之Function对象
2015/01/22 Javascript
Jquery简单实现GridView行高亮的方法
2015/06/15 Javascript
分享JavaScript与Java中MD5使用两个例子
2015/12/23 Javascript
jQuery+CSS3实现仿花瓣网固定顶部位置带悬浮效果的导航菜单
2016/09/21 Javascript
webpack+vue.js快速入门教程
2016/10/12 Javascript
判断横屏竖屏(三种)
2017/02/13 Javascript
原生js实现放大镜特效
2017/03/08 Javascript
react-native使用react-navigation进行页面跳转导航的示例
2017/09/07 Javascript
node.js 核心http模块,起一个服务器,返回一个页面的实例
2017/09/11 Javascript
JavaScript的词法结构精华篇
2018/10/17 Javascript
JavaScript设计模式之代理模式实例分析
2019/01/16 Javascript
微信小程序文字显示换行问题
2019/07/28 Javascript
layui内置模块layim发送图片添加加载动画的方法
2019/09/23 Javascript
使用axios请求接口,几种content-type的区别详解
2019/10/29 Javascript
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
解决python3爬虫无法显示中文的问题
2018/04/12 Python
Python mutiprocessing多线程池pool操作示例
2019/01/30 Python
python实现对图片进行旋转,放缩,裁剪的功能
2019/08/07 Python
Python使用mongodb保存爬取豆瓣电影的数据过程解析
2019/08/14 Python
python爬虫 2019中国好声音评论爬取过程解析
2019/08/26 Python
基于SQLAlchemy实现操作MySQL并执行原生sql语句
2020/06/10 Python
马来西亚奢侈品牌购物商城:Valiram 247
2020/09/29 全球购物
如何找出EMP表里面SALARY第N高的employee
2013/12/05 面试题
村干部承诺书
2014/03/28 职场文书
2014财产信托协议书范本
2014/11/18 职场文书
Spring Data JPA使用JPQL与原生SQL进行查询的操作
2021/06/15 Java/Android
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis