15个好用到哭的Python库

15个好用到哭的Python库

1. Dash

概念

Dash是用纯Python构建数据可视化App的理想选择,是Flask、Plotly.js和React.js的混合体

使用场景

特别适合处理数据的任何人

2. Pygame

概念

Pygame是SDL多媒体库的Python装饰器,SDL(Simple DirectMedica Layer)是一个跨平台开发库,旨在提供对以下内容的低级接口:

  • 音频
  • 键盘
  • 鼠标
  • 游戏杆
  • 基于OpenGL和Direct3D的图形硬件

特点

  • 具有高度的可移植性,几乎可以在所有平台和操作系统上运行
  • 尽管它具有完善的游戏引擎,但也可以使用此库直接从Python脚本播放MP3文件

3. Pillow

概念

Pillow专门用于处理图像,可使用该库创建缩略图,在文件格式之间转换、旋转、应用滤镜、显示图像等等

使用场景

需要对许多图像执行批量操作,这是理想的选择

实例演示:加载并渲染图片

from PIL import Image
im = Image.open('hope.jpg')
im.show()  # 会弹出图片
print(im.format, im.size, im.mode)
# JPEG (533, 300) RGB

4. Colorama

概念

Colorama允许在终端使用颜色,非常适合Python脚本

特点

文档简短而有趣,可在Colorama PyPI页面上找到

5. JmesPath

概念

JMESPath使Python处理JSON更加容易

特点

它允许用户明确指定如何从JSON文档中提取元素

实例演示

import jmespath

# 获取一个特定元素
d = {'foo': {'bar': 'baz'}}
print(jmespath.search('foo.bar', d))
# baz


# 使用一个通配符获取所有名字
d = {'foo': {'bar': [{'name': 'Jason'}, {'name': 'Alice'}]}}
print(jmespath.search('foo.bar[*].name', d))
# ['Jason', 'Alice']

6. Requests

概念

Requests建立在世界上下载量最大的Python库urllib3上,它令Web请求变得非常简单

特点

功能强大且用途广泛

实例演示

>>> import requests
>>> r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
application/json; charset=utf-8
>>> r.encoding
utf-8
>>> r.text
{"message":"Requires authentication","documentation_url":"https://docs.github.com/rest/reference/users#get-the-authenticated-user"}
>>> r.json()
{'message': 'Requires authentication', 'documentation_url': 'https://docs.github.com/rest/reference/users#get-the-authenticated-user'}

作用

Requests可完成用户能想到的所有高级工作,例如:

  • 认证
  • 使用cookie
  • 执行POST、PUT、DELETE等
  • 使用自定义证书
  • 使用会话session
  • 使用代理

7. Simplejson

概念

Python的json是simplejson,即Python采用了simplejson的一个版本。

使用simplejson的优点

  • 适用于更多Python版本
  • 比Python随附的版本更新频率更高
  • 具有用C编写的(可选)部分,因此非常快速

simplejson与默认json的比较

  • simplejson比json快很多,因为它用C实现一些关键部分,用于处理数百万个JSON文件
  • 当需要速度和标准库中没有的东西时,使用simplejson

使用案例

# 直接导入
import simplejson

# 或为防止导入失败,进行异常捕获
try:
    import simplejson as json
except ImportError:
    import json

8. Emoji

使用场景

分析视角媒体数据时,Emoji包非常有用

代码示例

import emoji

# 给力、赞
awesome = emoji.emojize('Python is :thumbs_up:')
print(awesome)
# Python is 
上一篇:关于对象能不能直接访问私有成员的问题


下一篇:robotframework简单安装介绍