Python的标准库介绍与常用的第三方库

Python的标准库:

datetime:为日期和时间的处理提供了简单和复杂的方法。

zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip,bz2,zipfile和 tarfile。

random:提供了生成随机数的工具。

math:为浮点运算提供了对底层C函数库的访问。

sys:工具脚本经常调用的命令行参数。这些命令行参数以链表形式存储于 sys 模块的 argv 变量。

glob:提供了一个函数,用于从目录通配符搜索中生成文件列表。

os:提供了许多与操作系统相关联的函数。

re:为高级字符串处理提供了正则表达式工具。

这里以math库和random库为例进行详细介绍:

math中常用的数学函数:

圆周率pi:∏的近似值,15位小数。

自然数e:e的近似值,15位小数。

ceil(x):对浮点数向上取整。

floor(x):对浮点数向下取整。

pow(x,y):计算x的y次方。

log(x):以e为基的对数。

log10(x):以10为基的对数。

sqrt(x):平方根。

exp(x):e的x次幂。

degrees(x):将弧度值转换成角度。

radians(x) :将角度值转换位弧度值。

sin(x):正弦函数。

cos(x):余弦函数。

tan(x):正切函数。

asin(x):反正弦函数。

acos(x):反余弦函数。

atan(x):反正切函数。

import math

print(math.pi)

print(math.e)

print(math.ceil(4.25))

print(math.floor(2.78))

print(math.pow(2,3))

print(math.log(math.e))

print(math.log10(5))

print(math.sqrt(9))

print(math.exp(2))

print(math.degrees(3))

print(math.radians(180))

print(math.sin(30))

print(math.cos(45))

print(math.tan(60))

print(math.asin(0.5))

print(math.acos(0.3))

print(math.atan(1.5))

运行结果:

random中常用的函数:

seed(x):给随机数一个种子值seed(x),如果使用相同的seed(x)(即相同的种子值),则每次生成的随机数相同,如果不设置seed()值,则默认随机种子是系统时钟,系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。也可以说,seed的作用是让随机结果可重现。

random():生成一个[0,1.0)之间的随机小数。

uniform(a,b):生成一个a到b之间的随机小数。

randint(a,b):生成一个a到b之间的随机整数。

randrange(a,b,c):随机生成一个从a到b以c递增的数。

choice(< lsit >):从列表中随机返回一个元素。

shuffle(< list > ):将列表中的元素随机打乱。

sample(< list >, k):从指定列表随机获取k个元素。

import random

#设置种子seed

#生成同一个随机数

random.seed(5)

print(random.random())

random.seed(5)

print(random.random())

random.seed(5)

print(random.random())

print()

print(random.random())

print(random.uniform(1,5))

print(random.randint(2,10))

print(random.randrange(1,9,2))

ls=[1,3,5,7,9]

print(random.choice(ls))

random.shuffle(ls)

print(ls)

print(random.sample(ls,3))

运行结果:

使用math库和random库计算一个圆锥的体积:

import math

import random

r=random.randint(1,5)

h=random.uniform(1,10)

v=math.pi*(r**2)*h/3

print('r=',r)

print('h=',h)

print('v=',v)

运行结果:

Python常用的第三方库:

Scrapy:爬虫工具常用库。

Requests:http库。

Pillow:是PIL(Python图形库)的一个分支。适用于图形领域。

matplotlib:用于绘制数据图。适用于数据分析。

OpenCV:图片识别,常用于练习人脸识别。

pytesseract:图片文字识别,即OCR识别 。

wxPython:Python的一个GUI(图形用户界面)工具。

Twisted:对于网络应用开发者最重要的工具。

SymPy:可用于代数评测、差异化、扩展、复数等。

SQLAlchemy:数据库相关的库。

SciPy:Python的算法和数学工具库。

Scapy:数据包探测和分析库。

pywin32:提供了与windows交互的方法和类的Python库。

pyQT:Python的一个GUI工具。不过Python脚本开发用户界面时一般优先选择wxPython。

pyGtk:Python 的一个GUI库。

Pyglet:用于3D动画和游戏开发引擎。

Pygame:开发2D游戏时使用效果较好。

NumPy:为Python提供了很多高级的数学方法。

nose Python:Python的测试框架。

nltk:自然语言工具包。

IPython:Python的提示信息。包括完成信息、历史信息、shell功能等。

BeautifulSoup xml和html的解析库,适用于新手学习。

参考资料:

https://www.runoob.com/python3/python3-stdlib.html

Python的标准库介绍与常用的第三方库的更多相关文章

  1. 【转】个人常用iOS第三方库以及XCode插件介绍 -- 不错

    原文网址:http://adad184.com/2015/07/08/my-favorite-libraries-and-plugins/ 第三方库是现在的程序员离不开的东西 不光是APP开发 基本上 ...

  2. [置顶] android利用jni调用第三方库——第二篇——编写库android程序直接调用第三方库libhello.so

    0:前言 1:本文主要作为丙方android公司的身份来写 2:作者有不对的地方,请指出,谢谢 [第一篇:android利用jni调用第三方库——编写库libhello.so] [第二篇:androi ...

  3. android调用第三方库——第二篇——编写库android程序直接调用第三方库libhello.so (转载)

    转自:http://blog.csdn.net/jiuyueguang/article/details/9449737 版权声明:本文为博主原创文章,未经博主允许不得转载. 0:前言 1:本文主要作为 ...

  4. 常用iOS第三方库以及XCode插件介绍

    第三方库 CocoaPod CocoaPod并不是iOS上的第三方库 而是大名鼎鼎的第三方库的管理工具 在CocoaPod没有出现之前 第三方库的管理是非常痛苦的 尤其是一些大型的库(比如nimbus ...

  5. 个人常用iOS第三方库以及XCode插件介绍

    第三方库 CocoaPod CocoaPod并不是iOS上的第三方库 而是大名鼎鼎的第三方库的管理工具 在CocoaPod没有出现之前 第三方库的管理是非常痛苦的 尤其是一些大型的库(比如nimbus ...

  6. Python常用的第三方库

    最近学习python 做些数据挖掘相关的练习,涉及到很多第三方的库,所以做一总结. Setuptools 可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况. 我特别 ...

  7. 20个必不可少的Python库也是基本的第三方库

    个属于我常用工具的Python库,我相信你看完之后也会觉得离不开它们.他们是: Requests.Kenneth Reitz写的最富盛名的http库.每个Python程序员都应该有它. Scrapy. ...

  8. iOS 中 常用的第三方库

    现在对于我们 iOS 开发来说,基本上说不可能不使用第三方轮子啦,毕竟没那么多时间,而且自己造的轮子往往想着成为上图中的最后一个,结果却成了上图中第二个或第一个啦,当然大公司另当别论.下面我从之前用过 ...

  9. ios常用的第三方库

    ios开发中有可能用到的第三方库进行记录一下: 注:资料信息来源于网络 自己整理  https://developer.apple.com/reference(苹果官方文档) https://gith ...

随机推荐

  1. 【Vuejs】351- 带你解析vue2.0的diff算法

    前言 vue2.0加入了virtual dom,有向react靠拢的意思.vue的diff位于patch.js文件中,该算法来源于snabbdom,复杂度为O(n).了解diff过程可以让我们更高效的 ...

  2. .Net Core使用Ocelot网关(二) -鉴权认证

    前言 上一章已经简单的介绍了ocelot的使用了,但是网关暴露的接口如果什么人都能访问的话安全性就太低啦.所以我们需要去鉴权和认证.这里我们使用identityServer4给我们的网关来鉴权认证. ...

  3. 自建CA证书搭建https服务器

    由于CA收费,所以可以自建CA,通过将CA导入浏览器实现https的效果,曾经12306购票就需要自行导入网站证书. 关于https 2015年阿里巴巴将旗下淘宝.天猫(包括移动客户端)全站启用HTT ...

  4. Websphere 重置admin 控制台密码

    By way of wsadmin command: <WAS_INSTALL_DIR>/bin/> wsadmin -conntype NONE wsadmin> secur ...

  5. SpringMVC深入浅出(一)

    1.Springmvc是什么 是一个表现层框架,用于接受请求及参数,响应请求回显数据. 2.SpringMVC处理流程 SpringMVC流程 1.  用户发送请求至前端控制器DispatcherSe ...

  6. go 利用chan的阻塞机制,实现协程的开始、阻塞、返回控制器

    一.使用场景 大背景是从kafka 中读取oplog进行增量处理,但是当我想发一条命令将这个增量过程阻塞,然后开始进行一次全量同步之后,在开始继续增量. 所以需要对多个协程进行控制. 二.使用知识 1 ...

  7. d3.js 教程 模仿echarts折线图

    今天我们来仿echarts折线图,这个图在echarts是折线图堆叠,但是我用d3改造成了普通的折线图,只为了大家学习(其实在简单的写一个布局就可以).废话不多说商行代码. 1 制作 Line 类 c ...

  8. AE单词备忘

    类的基本特性内 approved 已批准 implemented 已实施 mandatory 强制性的 proposed 偍仪的 validated 已验证

  9. 微言Netty:分布式服务框架

    1. 前言 几年前,我就一直想着要设计一款自己的实时通讯框架,于是出来了TinySocket,她是基于微软的SocketAsyncEventArgs来实现的,由于此类提供的功能很简洁,所以当时自己实现 ...

  10. 【30天自制操作系统】day03:读写磁盘

    软盘 80个柱面,2个磁头,18个扇区 每个扇区 512 字节,共 1440 KB 读磁盘汇编 读取 10 个柱面到 0x0820 内存位置 ;读取磁盘 MOV AX,0x0820 MOV ES,AX ...