python有哪些模块
㈠ python十大必学模块是什么
这个不能一概而论的,据说python目前高达27万+个库,看你学习的方向必学模块也有不同,简单列举:
1、网络通用方面:
urllib-网络库
requests-网络库
pycurl– 网络库
httplib2– 网络库
RoboBrowser– 浏览网页
MechanicalSoup-一个与网站自动交互Python库
socket– 底层网络接口
2、爬虫方面:
grab– 爬虫框架
scrapy– 网络爬虫框架,不支持Python3
pyspider–爬虫系统。
cola– 爬虫框架
portia– 可视化爬虫
lxml– 高效HTML/ XML处理库
cssselect– 解析DOM树和CSS选择器。
pyquery– 解析DOM树和jQuery选择器。
html5lib– 根据WHATWG规范生成HTML/ XML文档的DOM
feedparser– 解析RSS/ATOM feeds。
MarkupSafe– 为XML/HTML/XHTML提供了安全转义的字符串。
xhtml2pdf– 将HTML/CSS转换为PDF。
untangle– XML文件转Python对象
xpinyin– 将中国汉字转为拼音
tablib– 数据导出为XLS、CSV、JSON、等格式的模块
textract– 从文件中提取文本
messytables– 解析表格数据
rows– 常用数据接口
Office
python-docx– 读取,查询和修改docx文件
xlwt/xlrd– 从Excel文件读取写入数据和格式信息
PDF
Markdown
Python-Markdown– 一个用Python实现的John Gruber的Markdown。
3、HTML/XML解析方面:
4、文件处理方面:
㈡ 什么是python模块
python是一门流行的编程语言,模块化的语言,通过对各个领域的封装的不同模块实现不同功能,无论你是做自动化,科学计算,图像处理,web开发等等,都可以找到python实现的模块帮你快速完成相关功能,这就是强大的python模块
㈢ Python必学的模块有哪些
简单来说,模块就是一堆代码实现某个功能,它们是已经写好的.py文件,在我们的.py文件中只需要用import导入模块就能使用它的功能了。
Python中的模块有内置标准模块、开源模块和自定义模块。
内置标准模块就是Python自带的模块,即下载好Python就可以直接导入使用的模块,例如我们之前使用过的math模块、time模块等。
开源模块就是不收费的由好心人写好的模块,我们可以通过下载这些模块后导入使用,开源模块一般也被我们称为第三方模块,例如数据处理工具NumPy、Pandas,以及深度学习着名框架Tensorflow都属于开源模块。
自定义模块与开源模块相对应,开源模块是他人写的,而自定义模块就是自己写好的模块。
Python常见的三个模块
一、time与datetime模块
在Python中,通常有这几种方式来表示时间:
时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。
格式化的时间字符串(Format String)
结构化的时间(struct_time):struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时)
二、random模块
三、os模块
os模块是与操作系统交互的一个接口
㈣ Python中操作Excel最好用的模块是
Python中的模块也称为库,在Python中操作Excel的模块有很多。
优缺点如下:
**1、Pandas模块**
Pandas是Python的一一个开源数据分析模块,可用于数据挖掘和数据分析,同时也提供数据清洗功能,可以说它是日前Python数据分析的必备工具之一。Pandas能够处理类似电子表格的数据,用于数据快速加载、操作、对齐、合并、数据预处理等。
Pandas通过对Excel文件的读写实现数据输入、输出,Pandas支持.xls和.xlsx格式文件的读写,支持只加载每个表的单一工作页。
import pandas as pd
df=pd.read_excel(r'E:ban.xlsx') #pandas 导入库获取excel表的数据内容
df`
**2、xlwings模块**
xlwings模块可以实现Python中调用Excel,也可以从Excel调用Python,这个模块支持支持.xls和.xlsx格式文件的读写,支持对这类文件的操作,还支持使用VBA,具有强大的转换功能,并且可以处理大部分数据类型。
**3、Xlrd模块**
xlrd模块可以读取Excel文件,其对Excel文件的读取可以实现比较精细的控制。虽然现在使用Pandas模块读取和保存Excel文件往往更加方便快捷,但在某些场景下,依然需要xlrd这种更底层的模块来实现对Excel文件读取的控制。
xlrd模块支持.xls、.xlsx格式文件的读取,但不支持写信息。
**4、xlwt模块**
前面xlrd模块可以读取Excel文件,但不能写。而xlwt模块可以写、可以修改Excel文件,但不能读,且只支持.xls格式文件的写操作。
**5、xlutils模块**
xlutils也是一个处理Excel文件的模块,但它不能对Excel文件进行读和写的操作,但依赖于xlrd模块和xlwt模块。xlutils模块支持.xls格式文件,不支持.xlsx格式文件。
**6、openpyxl模块**
openpyxl模块可以对.xlsx格式的Excel文件进行读写操作,特点是读取快、写入慢,且不能操作.xls格式文件。
**7、xlsxwriter模块**
xlsxwriter模块支持多种Excel功能,可以写.xlsx格式的Excel文件,而且速度快、占用内存空间小,但不支持读或者修改现有的Excel文件。
**8、win32com模块**
win32com模块支持.xls、.xlsx格式的Excel文件的读、写和修改,读写速度快。但win32com模块存在于pywin32的模块中,自身没有完善的文档,使用起来不太方便。
**9、分析总结**
Pandas模块把Excel当作数据读写的容器,为其强大的数据分析服务,因此读写性能的表现中规中矩。xlwings和win32com这两个模块都拥有很好的读写性能,强大的转换器可以处理大部分数据类型,同时,可以在程序运行时,在打开的Excel文件中进行实时操作,实现过程的可视化。另外,xlwings模块的数据结构转换器使其可以快速地为Excel文件添加二维数据结构,而不需要在Excel文件中重定位数据的行和列,因此笔者认为,从读写的便捷性来看,xlwings模块比较好用一些。
㈤ 盘点Python常用的模块和包
模块
1.定义
计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里。在python里,一个.py文件就是一个模块。
2.优点:
提高代码的可维护性。
提高代码的复用,当模块完成时就可以在其他代码中调用。
引用其他模块,包含python内置模块和其他第三方模块。
避免函数名和变量名等名称冲突。
python内建模块:
1.sys模块
2.random模块
3.os模块:
os.path:讲解
https://www.cnblogs.com/yufeihlf/p/6179547.html
数据可视化
1.matplotlib :
是Python可视化程序库的泰斗,它的设计和在1980年代被设计的商业化程序语言MATLAB非常接近。比如pandas和Seaborn就是matplotlib的外包,它们让你能用更少的代码去调用 matplotlib的方法。
访问:
https://matplotlib.org/
颜色:
https://www.cnblogs.com/darkknightzh/p/6117528.html
教程:
https://wizardforcel.gitbooks.io/matplotlib-user-guide/3.1.html
2.Seaborn:
它是构建在matplotlib的基础上的,用简洁的代码来制作好看的图表。Seaborn跟matplotlib最大的区别就是它的默认绘图风格和色彩搭配都具有现代美感。
访问:
http://seaborn.pydata.org/index.html
3.ggplot:
gplot 跟 matplotlib 的不同之处是它允许你叠加不同的图层来完成一幅图
访问:
http://ggplot.yhathq.com/
4.Mayavi:
Mayavi2完全用Python编写,因此它不但是一个方便实用的可视化软件,而且可以方便地用Python编写扩展,嵌入到用户编写的Python程序中,或者直接使用其面向脚本的API:mlab快速绘制三维图
访问:http://code.enthought.com/pages/mayavi-project.html
讲解:https://blog.csdn.net/ouening/article/details/76595427https://www.jianshu.com/p/81e6f4f1cdd8
5.TVTK:
TVTK库对标准的VTK库进行包装,提供了Python风格的API、支持Trait属性和numpy的多维数组。
VTK (http://www.vtk.org/) 是一套三维的数据可视化工具,它由C++编写,包涵了近千个类帮助我们处理和显示数据
讲解:https://docs.huihoo.com/scipy/scipy-zh-cn/tvtk_intro.html
机器学习
1.Scikit-learn
是一个简单且高效的数据挖掘和数据分析工具,易上手,可以在多个上下文中重复使用。它基于NumPy, SciPy 和 matplotlib,开源,可商用(基于 BSD 许可)。
访问:
讲解:https://blog.csdn.net/finafily0526/article/details/79318401
2.Tensorflow
最初由谷歌机器智能科研组织中的谷歌大脑团队(Google Brain Team)的研究人员和工程师开发。该系统设计的初衷是为了便于机器学习研究,能够更快更好地将科研原型转化为生产项目。
相关推荐:《Python视频教程》
Web框架
1.Tornado
访问:http://www.tornadoweb.org/en/stable/
2.Flask
访问:http://flask.pocoo.org/
3.Web.py
访问:http://webpy.org/
4.django
https://www.djangoproject.com/
5.cherrypy
http://cherrypy.org/
6.jinjs
http://docs.jinkan.org/docs/jinja2/
GUI 图形界面
1.Tkinter
https://wiki.python.org/moin/TkInter/
2.wxPython
https://www.wxpython.org/
3.PyGTK
http://www.pygtk.org/
4.PyQt
https://sourceforge.net/projects/pyqt/
5.PySide
http://wiki.qt.io/Category:LanguageBindings::PySide
科学计算
教程
https://docs.huihoo.com/scipy/scipy-zh-cn/index.html#
1.numpy
访问
http://www.numpy.org/
讲解
https://blog.csdn.net/lm_is_dc/article/details/81098805
2.sympy
sympy是一个Python的科学计算库,用一套强大的符号计算体系完成诸如多项式求值、求极限、解方程、求积分、微分方程、级数展开、矩阵运算等等计算问题
访问
https://docs.sympy.org/0.7.1/guide.html#guide
讲解
https://www.jianshu.com/p/339c91ae9f41
解方程
https://www.cnblogs.com/zyg123/p/10549354.html
3.SciPy
官网
https://www.scipy.org/
讲解
https://blog.csdn.net/wsp_1138886114/article/details/80444621
4.pandas
官网
http://pandas.pydata.org/
讲解
https://www.cnblogs.com/linux-wangkun/p/5903945.html
5.blaze
官网
http://blaze.readthedocs.io/en/latest/index.html
密码学
1.cryptography
https://pypi.python.org/pypi/cryptography/
2.hashids
http://www.oschina.net/p/hashids
3.Paramiko
http://www.paramiko.org/
4.Passlib
https://pythonhosted.org/passlib/
5.PyCrypto
https://pypi.python.org/pypi/pycrypto
6.PyNacl
http://pynacl.readthedocs.io/en/latest/
爬虫相关
requests
http://www.python-requests.org/
scrapy
https://scrapy.org/
pyspider
https://github.com/binux/pyspider
portia
https://github.com/scrapinghub/portia
html2text
https://github.com/Alir3z4/html2text
BeautifulSoup
https://www.crummy.com/software/BeautifulSoup/
lxml
http://lxml.de/
selenium
http://docs.seleniumhq.org/
mechanize
https://pypi.python.org/pypi/mechanize
PyQuery
https://pypi.python.org/pypi/pyquery/
creepy
https://pypi.python.org/pypi/creepy
gevent
一个高并发的网络性能库
http://www.gevent.org/
图像处理
bigmoyan
http://scikit-image.org/
Python Imaging Library(PIL)
http://www.pythonware.com/procts/pil/
pillow:
http://pillow.readthedocs.io/en/latest/
自然语言处理
1.nltk:
http://www.nltk.org/
教程
https://blog.csdn.net/wizardforcel/article/details/79274443
2.snownlp
https://github.com/isnowfy/snownlp
3.Pattern
https://github.com/clips/pattern
4.TextBlob
http://textblob.readthedocs.io/en/dev/
5.Polyglot
https://pypi.python.org/pypi/polyglot
6.jieba:
https://github.com/fxsjy/jieba
数据库驱动
mysql-python
https://sourceforge.net/projects/mysql-python/
PyMySQL
https://github.com/PyMySQL/PyMySQL
PyMongo
https://docs.mongodb.com/ecosystem/drivers/python/
pymongo
MongoDB库
访问:https://pypi.python.org/pypi/pymongo/
redis
Redis库
访问:https://pypi.python.org/pypi/redis/
cxOracle
Oracle库
访问:https://pypi.python.org/pypi/cx_Oracle
SQLAlchemy
SQL工具包及对象关系映射(ORM)工具
访问:http://www.sqlalchemy.org/
peewee,
SQL工具包及对象关系映射(ORM)工具
访问:https://pypi.python.org/pypi/peewee
torndb
Tornado原装DB
访问:https://github.com/bdarnell/torndb
Web
pycurl
URL处理工具
smtplib模块
发送电子邮件
其他库暂未分类
1.PyInstaller:
是一个十分有用的第三方库,它能够在Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。
2.Ipython
一种交互式计算和开发环境
讲解
https://www.cnblogs.com/zzhzhao/p/5295476.html
命令
ls、cd 、run、edit、clear、exist
㈥ python有哪些模块
Python是一门非常高级的编程语言,内置了许多标准模块,比如:sys、os、datetime等。
os模块
os.getcwd() # 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") # 改变当前脚本工作目录;相当于shell下cd
os.curdir # 返回当前目录: ('.')
os.pardir # 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') # 可生成多层递归目录
os.removedirs('dirname1') # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') # 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') # # 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') # 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() # 删除一个文件
os.rename("oldname","newname") # 重命名文件/目录
os.stat('path/filename') # 获取文件/目录信息
os.sep # 输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
os.linesep # 输出当前平台使用的行终止符,win下为" ",Linux下为" "
os.pathsep # 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name # 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") # 运行shell命令,直接显示
os.environ # 获取系统环境变量
os.path.abspath(path) # 返回path规范化的绝对路径
os.path.split(path) # 将path分割成目录和文件名二元组返回
os.path.dirname(path) # 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) #
返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) # 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) # 如果path是绝对路径,返回True
os.path.isfile(path) # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) # 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]]) # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) # 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) # 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) # 返回path的大小
sys模块
sys.argv # 命令行参数List,第一个元素是程序本身路径
sys.exit(n) # 退出程序,正常退出时exit(0)
sys.version # 获取Python解释程序的版本信息
sys.maxint # 最大的Int值
sys.path # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform # 返回操作系统平台名称
datetime模块
datetime.today()返回一个表示当前本期日期时间的datetime对象
datetime.now([tz])返回指定时区日期时间的datetime对象,如果不指定tz参数则结果同上
datetime.utcnow()返回当前utc日期时间的datetime对象
datetime.fromtimestamp(timestamp[, tz])根据指定的时间戳创建一个datetime对象
datetime.utcfromtimestamp(timestamp)根据指定的时间戳创建一个datetime对象
datetime.strptime(date_str, format)将时间字符串转换为datetime对象