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. DRF Django REST framework 之 路由器与版本控制组件(七)

    路由器 一些Web框架提供了用于自动确定应如何将应用程序的URL映射到处理传入请求的逻辑的功能. 而DRF的路由器组件也提供了一种简单,快速且一致的方式将视图逻辑映射到一组URL上. 路由器组件的使用 ...

  2. 【Html5】使用学习

    Html5使用学习 目录 1.方式js文件被浏览器缓存 <script>document.write("<script src='y.js?v=" + Date. ...

  3. python学习-caculator

    # 运算符操作# 算术运算符num_a = 100num_b = 5000 # 加法print(num_a + num_b)# 减法print(num_a - num_b)# 乘法 *print(nu ...

  4. Runtime - 关联对象使用方法及注意点

    大家都知道在分类里,可以间接的添加属性,运用runtime关联对象. 如下图,只是声明了btnClickedCount的set, get方法而已 并没有生成_btnClickedCount 成员变量, ...

  5. C++错误unresolved external symbol _WinMain@16

    C++错误unresolved external symbol _WinMain@16 Linking...  LIBCD.lib(wincrt0.obj) : error LNK2001: unre ...

  6. python的tqdm模块介绍

    https://www.jianshu.com/p/b27318efdb7b Tqdm 是 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息用法:tqdm(iterator) ...

  7. 剑指offer笔记面试题2----实现Singleton模式

    题目:设计一个类,我们只能生成该类的一个实例. 解法一:单线程解法 //缺点:多线程情况下,每个线程可能创建出不同的的Singleton实例 #include <iostream> usi ...

  8. HA: Infinity Stones Vulnhub Walkthrough

    下载地址: https://www.vulnhub.com/entry/ha-infinity-stones,366/ 主机扫描: 目录枚举 我们按照密码规则生成字典:gam,%%@@2012 cru ...

  9. December 14th, Week 50th Saturday, 2019

    If you have got a talent, protect it. 如果你有天赋,要去保护她. From Jim Carrey. If you think you have a talent, ...

  10. 【原创】你的Redis怎么持久化的

    引言 (本文改编自生活真实案例,如有类同,绝不是巧合!) 端午节,烟哥正在一边愉快的学习.... 突然,微信一阵抖动.原来是老刘呼唤烟哥!善良的烟哥本以为人家是要约我出去玩!然而,打开微信一看,出现下 ...