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. leetcode -- 寻找两个有序数组的中位数

    题目: 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2. 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n)). 你可以假设 nums1 和 nu ...

  2. 改变SecureCRT的背景颜色

    1.在使用secureCRT客户端时,可以连接服务器,默认为白色底. 2.要进行对把底色的白色改为黑色的底色,右击的窗口的位置. 3.下拉菜单中点击 Session Options 4.点击Appea ...

  3. JS-scrollTop、scrollHeight、clientTop、clientHeight、offsetTop、offsetHeight的理解

    scrollTop, 可写(这些属性中唯一一个可写的元素) Element.scrollTop 属性可以获取或设置一个元素的内容垂直滚动的像素数. 一个元素的 scrollTop 值是这个元素的顶部到 ...

  4. mysql取消严格模式

    配置文件my.ini sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 修改为 s ...

  5. 一个非常美的FlutterUI组件扩展集:FLUI

    项目地址 FLUI 官网 下载 Demo APK 体验 这是一个群内的网友写的,感觉里面的组件风格非常美,封装的挺到位的,在此推荐给大家,具体可以参考学习. 可以学到的知识还是挺多的,组件UI封装可以 ...

  6. 聊聊 print 的前世今生

    本文原创并首发于公众号[Python猫],未经授权,请勿转载. 原文地址:https://mp.weixin.qq.com/s/NuzfuH_zCZzcrmSFR04NHw (一) 上周,我翻译了一篇 ...

  7. CouchDB学习-介绍

    官方文档 CouchDB 1文档存储 CouchDB服务器主机是一个存储文档的数据库.每一个文档在数据库中都有唯一的名字.CouchDB提供RESTful HTTP API用来读取和更新(添加,编辑, ...

  8. 服务发现(consul)搭建

    服务发现(consul)搭建 下载最新版 consul 本人使用的版本为1.5.1,操作系统:window server 2008 consul部署的时候分为客户端和服务端,本次操作服务器2台,客户端 ...

  9. 如何编写一个TS程序?

    第一步:我们首先需要个代码编辑器-VSCode  点击此处下载(你会下载到rar文件) 第二步:我们还需要下载NodeJS,因为这里有npm,npm是包管理工具,可以下载TypeScript. 注意: ...

  10. JS---封装缓动(变速)动画函数---增加多个任意多个属性

    封装缓动动画函数---增加多个任意多个属性 在原来缓动动画函数,增加任意一个属性的基础上,做了如下改变 1. 原来function animate(element, attr, target),三个变 ...