十大热门Python框架和应用,你最喜欢哪一个?

发表时间: 2022-12-09 13:48

网上有不少Python的框架和应用。

在这里推荐10个超有用的框架或应用,包含:高性能的Web框架、汉语分词库、数据可视化的Python库等等。

全文干货,推荐收藏。

1. fastapi

  • 作者: tiangolo
  • star: 52000
  • fork: 4300
  • watch: 601

基于 Python 3.6+ 的高性能 Web 框架。FastAPI "名副其实",不仅写接口快,调试也方便,Python 的不断进步,让 Web 开发也变得更快、更强。

示例代码:

from fastapi import FastAPIapp = FastAPI()@app.get("/")async def read_root():    return {"Hello": "World"}@app.get("/items/{item_id}")async def read_item(item_id: int, q: str = None):    return {"item_id": item_id, "q": q}# 启动命令:uvicorn main:app --reload


2. rich

  • 作者: Textualize
  • star: 41000
  • fork: 1400
  • watch: 541

想要一个高级感满满的终端吗?rich能给你想要的一切。虽然把终端过度美化不仅华而不实,甚至会喧宾夺主,但不可否认,一个好看得终端输出,在愉悦心情的同时,还能提高开发者的效率。

每当看到那些性感的语法高亮、整齐的表格、舒服的进度条,你就会庆幸我给你推荐了这款框架。


3. sentry

  • 作者: getsentry
  • star: 33000
  • fork: 3700
  • watch: 675

一款采用C/S模式的实时异常监控平台,免费开通,通过Python实现。不仅提供清晰高效的web管理界面,还支持从任何语言、任何应用程序发送事件。

在应用服务开发领域,成熟的异常监控警告必不可少,sentry能很好地完成这方面的任务。


4. jieba

  • 作者: fxsjy
  • star: 30000
  • fork: 6600
  • watch: 1300

强大的汉语分词库,Python界人尽皆知的NLP必备工具,接口非常完善,开箱即用

示例代码如下:

# encoding=utf-8import jiebaseg_list = jieba.cut("我来到北京清华大学", cut_all=True)print("Full Mode: " + "/ ".join(seg_list))  # 全模式seg_list = jieba.cut("我来到北京清华大学", cut_all=False)print("Default Mode: " + "/ ".join(seg_list))  # 精确模式seg_list = jieba.cut("他来到了网易杭研大厦")  # 默认是精确模式print(", ".join(seg_list))seg_list = jieba.cut_for_search("小明硕士毕业于中国科学院计算所,后在日本京都大学深造")  # 搜索引擎模式print(", ".join(seg_list))【全模式】: 我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学【精确模式】: 我/ 来到/ 北京/ 清华大学【新词识别】:他, 来到, 了, 网易, 杭研, 大厦    (此处,“杭研”并没有在词典中,但是也被Viterbi算法识别出来了)【搜索引擎模式】: 小明, 硕士, 毕业, 于, 中国, 科学, 学院, 科学院, 中国科学院, 计算, 计算所, 后, 在, 日本, 京都, 大学, 日本京都大学, 深造

5. redash

  • 作者: getredash
  • star: 22000
  • fork: 3900
  • watch: 587

redash是一个优质的数据可视化项目,通过Python实现的数据查询以及可视化的功能。聚焦在数据可视化的核心功能上,减少冗余的同时,也更容易掌握。

应用可以将一个SQL查询结果高效地可视化,同时提供SQL代码片段存储,降低重写SQL的情况。


6. taichi

  • 作者: taichi-dev
  • star: 22000
  • fork: 2100
  • watch: 396

这是一个高性能的图形编程框架。它可以将 Python 代码转换成高效的汇编代码,在多 CPU 和 GPU 上操作,相当于使用 Python 写修饰器。

Taichi 解决了图形学配置环境难、代码移植性差等问题,通过pip install taichi就可以安装。示例代码:

import taichi as titi.init(arch=ti.gpu)  # 指定编译后的函数在 GPU 上执行n = 320pixels = ti.field(dtype=float, shape=(n * 2, n))  # 提前声明数组存储类型,大小@ti.func  # 该函数将是被调用的过程函数def complex_sqr(z):    return ti.Vector([z[0]**2 - z[1]**2, z[1] * z[0] * 2])@ti.kernel  # 该函数将被 Taichi 编译def paint(t: float):    for i, j in pixels:  # 最外层循环会自动并行化        c = ti.Vector([-0.8, ti.cos(t) * 0.2])        z = ti.Vector([i / n - 1, j / n - 0.5]) * 2        iterations = 0        while z.norm() < 20 and iterations < 50:  # 其他语法和原生 Python 基本一致            z = complex_sqr(z) + c            iterations += 1        pixels[i, j] = 1 - iterations * 0.02gui = ti.GUI("Julia Set", res=(n * 2, n))for i in range(1000000):    paint(i * 0.03)    gui.set_image(pixels)    gui.show()


7. streamlit

  • 作者: streamlit
  • star: 22000
  • fork: 1900
  • watch: 284

一个快速搭建和分享数据的应用,能够快速地把数据传换成可视化、可交互的网页。该框架后端用Python写成。

应用能十分方便、快捷地帮助你把数据变成图表,并且可以提供免费共享的服务平台,使你的数据项目更快上线,给更多人共享和讨论。


8. labelImg

  • 作者:heartexlabs
  • star: 19000
  • fork: 5700
  • watch: 378

这是一个用Python和Qt实现的图像标注桌面应用,开箱即用非常方便,适配 Windows、Linux、macOS。数据标注支持 PASCAL VOC 格式的 XML 文件和 YOLO 的 txt 文件。


9. pyecharts

  • 作者: pyecharts
  • star: 13000
  • fork: 2700
  • watch: 380

Echarts是一个非常实用,内容丰富的图表类库,本项目是Echarts的python应用框架。


10. imgaug

  • 作者: aleju
  • star: 13000
  • fork: 2300
  • watch: 229

这是一个针对图像的数据增强应用库。

一个庞大且优质的数据集,对于机器学习至关重要。所谓数据增强,即是将有限数据集衍生出更多数据,以增加样本数量和多样性的数据治理行为。

imgaug是一个转为机器学习准备的图像数据增强库。


感谢你看到这里,希望以上信息对你有所帮助。

离开之前,记得点赞哦~

推荐阅读

我还推荐过一些其他的Python库,有需要的可以点击下方卡片获取:

IT大佬推荐 ! 20个必备的Python库 让你的资源从此用不完 建议收藏

结束语

我是@老K玩代码,专注于编程开发的经验总结和项目分享,对编程有兴趣、正在学习编程的同学可以关注我。


#头条创作挑战赛#