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. postman设置全局变量

    //处理token var jsn = JSON.parse(responseBody) console.log(jsn.access_token) //把access_token设置到全局变量中 p ...

  2. Nginx(一)--nginx的初步认识及配置

    什么是Nginx 是一个高性能的反向代理服务器正向代理代理的是客户端反向代理代理的是服务端 Apache.Tomcat.Nginx 静态web服务器jsp/servlet服务器 tomcat 安装Ng ...

  3. GenericServlet和HttpServlet有什么区别?

    1.HttpServlet 1). 是一个 Servlet, 继承自 GenericServlet. 针对于 HTTP 协议所定制. 2). 在 service() 方法中直接把 ServletReu ...

  4. eclipse设置护眼模式,就是设置为黑色背景,

    效果如上图 首先下载jar包,然后放到下面的目录,然后打开eclipse然后选择哪个dark的那个主题就可以了 然而这里只是设置软件部分的, 代码的背景和高亮显示,是在另外一个地方设置, 一般是下载e ...

  5. 在Atmel Studio7中创建ASF项目

    使用ASF自带例程的方式创建程序是很方便,但是因为系统例程支持的ATMEL开发板往往和用户板配置不同,所以我们需要自己创建项目.下面介绍在AS7.0中快速创建一个ASF项目的方法. 1.首先从菜单开始 ...

  6. 百万级高并发mongodb集群性能数十倍提升优化实践

    背景 线上某集群峰值TPS超过100万/秒左右(主要为写流量,读流量很低),峰值tps几乎已经到达集群上限,同时平均时延也超过100ms,随着读写流量的进一步增加,时延抖动严重影响业务可用性.该集群采 ...

  7. HttpRunner学习11--指定用例运行次数

    前言 在HttpRunner中,一般情况下,我们写的用例脚本都是每次运行一次,如果我们想要指定用例运行的次数,可以通过 times 关键字来实现. 测试场景 在这里,我们以访问 TesterHome ...

  8. 6.1 自定义abp拦截器示例

    一个简单.基于AbpInterceptor的拦截器示例: using Microsoft.Extensions.DependencyInjection; using System; using Sys ...

  9. Samba CVE-2017-7494验证实验

    漏洞简介 Samba是在Linux和UNIX系统上实现SMB协议的一个软件,不少IoT设备也使用了Samba.2017年5月24日Samba发布了4.6.4版本,修复了一个严重的远程代码执行漏洞,漏洞 ...

  10. MySQL Event历史记录

    需求 SQL Server的作业历史(Job)记录是保存在msdb库中的,很方便就查询相关的Job定义,计划和历史记录,而MySQL的event却没有历史记录.为方便查看event是否正常执行以及执行 ...