Python 潮流周刊#18:Flask、Streamlit、Polars 的学习教程

Python猫

共 7083字,需浏览 15分钟

 · 2023-09-07

△点击上方“Python猫”关注 ,回复“1”领取电子书

你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。标题取自其中三则分享,不代表全部内容都是该主题,特此声明。

本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进 Python 技术,并增长职业和副业的收入。

为了方便读者获取原始内容,我已将周刊的 Markdown 文件归档在 Github,请通过以下链接获取:https://github.com/chinesehuazhou/python-weekly

🦄文章&教程

1、一份深入探索 Flask 的指南[1]

由系列文章组成的 Flask 学习指南,深入了解 Flask 的内部结构、核心特性和功能,涵盖主题有程序和请求上下文、Werkzeug、会话、安全(防CSRF)、测试、2.0 版本的异步等。

2、使用 PyMuPDF 识别与提取表格[2]

识别和处理 PDF 文件中的表格是件困难的事,PyMuPDF 最新版本 1.23.0 提供了从 PDF 中提取表格的功能!可以将提取内容交给 pandas 处理,可以导出 Excel 和 CSV 格式的文件。

3、深入介绍 Python 3.12 中的永生对象[3]

周刊第 16 期[4]分享了 Instagram 在 Python 3.12 引入永生对象的故事,而这里分享的文章深入剖析解释器源码,为我们回答了以下问题:为什么要引入永生对象?它对性能有什么影响?它是如何实现的(如 None 对象和小整数),如何做到兼容旧版本的接口的?

4、Python 中下划线的十种用法[5]

你知道 Python 中的下划线有哪些用法么?这篇文章介绍了:REPL 中的用法、作变量名的前缀和后缀时的四种用法、作为赋值“接收器”的两种用法、新 match-case 语法中的用处、用作频繁调用的函数别名、大额数字中增加可读性。

5、Python Asyncio 之网络编程方法详解[6]

Asyncio 不仅提供了简单的Socket接口,还基于它提供了Protocol&Transport接口以及更高级的Stream接口,大大的减轻了开发者进行网络编程的心理负担。文章主要介绍了这几个接口的简单使用以及对应的原理分析。

6、给初学者的 Streamlit 学习指南[7]

Streamlit 是一个用于创建和部署 Web 程序的框架,广泛用于机器学习和数据科学领域。这篇教程介绍了它的安装以及常用组件的使用。

7、如何在 FastAPI 应用中使用 Tailwind CSS 和 SQLAlchemy[8]

FastAPI 是一个轻量级框架,通常需要集成其它组件搭配使用。这篇文章介绍了如何将 FastAPI 与 Jinja2 模板引擎、Tailwind CSS 以及 SQLAlchemy 结合,创建出一个好用的开发脚手架。

8、Python 如何不作排序但保持数据有序[9]

文章介绍了 Python 堆排序/优先队列、二分查找、有序容器的相关使用,它们有更好的时间复杂度或适用场景,是比暴力搜索和暴力排序更值得采用的解决方案。

9、用 Django 发送带有验证链接的电子邮件[10]

我们经常会在注册一些账号后收到一封验证邮件,只有在链接的有效期内点击它才能完成账号注册。这篇教程介绍了如何用 Django 来实现这个功能,这是一个简短而完整的练手项目。

10、探索全球多样性:Pyetho — 用于了解国家及其语言的 Python 库[11]

文章介绍了Pyetho[12] 这个库的基本使用,它主要包含了全球国家及其语言的相关信息,采用 ISO 标准。收录有 195 个国家,我查询了下,中国有 285 种语言。除了国家和语言基本信息外,其它功能包括:查询某种语言的使用人数、查询某种语言在哪些国家使用、查询某种语言的谱系家族、查询所有的语言家族,等等。

11、Polars:快如闪电的 DataFrame 库[13]

Polars 是数据分析领域的新秀,底层是用 Rust 写的,拥有超高性能。这是一篇详细的教程,内容包括:它的 DataFrame、表达式和上下文、惰性 API(LazyFrame)、与外部数据源集成、与 Numpy 和 pandas 的集成,等等。

12、深入学习数据结构与算法:C++、Swift、Python、Java、C#、JavaScript[14]

超长文预警!文章探索了不同编程语言中常见数据结构的实现,使用简洁的动画和图表直观介绍了相关的知识。主要涉及线性数据结构,如数组、动态数组、链表、循环链表、栈、队列、哈希表、集合,等等。数据结构当然离不开算法和时间复杂度,文中也有对应介绍。

🎁Python潮流周刊🎁已免费发布了 18 期,访问下方链接,即可查看全部内容:https://pythoncat.top/tags/weekly[15]

如果你觉得周刊有价值,请表达小小心意,赞赏一下猫哥吧~~

🐿️项目&资源

1、fastapi-users:开箱即用的 FastAPI 用户管理库[16]

为 FastAPI 添加用户注册与身份验证模块,主要特性有:可扩展的用户模型、注册/登录/重置密码/邮箱验证、OAuth2 登录流程、可定制的数据库后端、支持多种身份验证,等等。(star 3.3K)

2、upiano:命令行里的钢琴[17]

在命令行里弹钢琴是种什么体验?!安装这个库后,你就可以用鼠标和键盘来弹钢琴了。

3、hrequests:requests 库的替代品[18]

一个比 requests 库更简单、可配置、功能丰富的库,使用 gevent 实现高性能并发,支持 HTTP/2,JSON 序列化比标准库快 10 倍,代码使用类型提示,100% 线程安全。

4、wisdomInterrogatory:智海-录问法律大模型[19]

由浙江大学、阿里巴巴达摩院以及华院计算共同设计研发的法律大模型,以“普法共享和司法效能提升”为目标。模型基座是 Baichuan-7B,预训练的数据包括法律文书、司法案例以及法律问答数据,共 40 G。

5、awesome-systematic-trading:一个精选的系统化交易列表[20]

系统化交易/量化交易是依据规则和算法进行自动化交易的策略,这个仓库收录了一系列资源:库、软件、策略、书籍、博客、论文、视频,等等。(star 1.1K)

6、Qwen-VL:阿里通义千问-VL 模型的官方库[21]

Qwen-VL 是阿里云研发的大规模视觉语言模型,可以以图像、文本、检测框作为输入,并以文本和检测框作为输出。支持多语言、多图交错对话。评测结果显示,Qwen-VL 在多个 VL 任务上相比目前 SOTA 的 Generalist Models 都有明显优势。

7、h2ogpt:私人文档+图像的问答[22]

查询和总结你的文档,或者与本地私有的 GPT LLM 聊天。支持大部分文档,支持 LLaMa2、Falcon、Vicuna、AutoGPTQ、LORA 等,支持 Linux、Docker、MAC 和 Windows。(star 7.2K)

8、refact:开源编码助手,支持自动补全、代码重构、代码分析[23]

Copilot 的开源替代方案,可自托管或使用云服务。支持 starcoder、starchat、llama2、wizardlm 等开源模型,支持代码补全、重构、解释、分析、优化与修复错误等功能。

9、dify:创建自己的 AI 应用[24]

dify 是 Do It For You 的简写,是一个易用的 LLMOps 平台,支持快速创建出自己的 AI 应用。核心能力:通过 Langchain 支持主流的大语言模型(包括讯飞星火、文心一言、通义千问)、可视化编排 Prompt、支持添加数据集、支持插件、支持数据标注与改进。(star 8K)

10、dara:轻松创建交互式 Web 应用程序[25]

一个低代码开发框架,与 Plotly Dash、Streamlit 和 Shiny 相似,支持快速创建仪表板应用。后端使用 FastAPI,前端是一个基于 React  的 UI。

dara创建应用示例

🐱赞助&支持

如果你喜欢周刊,请分享给其他需要的同学,让更多人可以从中受益~

如果你觉得周刊有价值,请随意赞赏[26]买杯咖啡[27] 进行支持!

如果你想帮助周刊办得更好,欢迎向我们投稿或提出建议:投稿/建议通道[28]

如果你是品牌方或广告主,欢迎私信我,洽谈赞助与合作事项。

🐼欢迎订阅

  • 微信公众号[29]:除更新周刊外,还发布其它原创作品,并转载一些优质文章。(可加好友,可加读者交流群)

  • 博客[30]RSS[31]:我的独立博客,上面有历年原创/翻译的技术文章,以及从 2009 年以来的一些随笔。

  • Github[32]:你可以获取本周刊的 Markdown 源文件,做任何想做的事!

  • 邮件[33]:在 Substack 上开通的频道,满足你通过邮件阅读时事通讯的诉求。

  • Telegram[34]:除了发布周刊的通知外,我将它视为一个“副刊”,补充发布更加丰富的资讯。

  • Twitter[35]:我的关注列表里有大量 Python 相关的开发者与组织的账号。

参考资料

[1]

一份深入探索 Flask 的指南: https://testdriven.io/guides/flask-deep-dive

[2]

使用 PyMuPDF 识别与提取表格: https://artifex.com/blog/table-recognition-extraction-from-pdfs-pymupdf-python

[3]

深入介绍 Python 3.12 中的永生对象: https://codeconfessions.substack.com/p/understanding-immortal-objects-in

[4]

第 16 期: https://pythoncat.top/posts/2023-08-19-weekly

[5]

Python 中下划线的十种用法: https://mathspp.com/blog/pydonts/usages-of-underscore

[6]

Python Asyncio 之网络编程方法详解: https://so1n.me/2023/08/29/python_asyncio_lib_network/

[7]

给初学者的 Streamlit 学习指南: https://dev.to/codemaker2015/streamlit-cheatsheet-for-beginners-706

[8]

如何在 FastAPI 应用中使用 Tailwind CSS 和 SQLAlchemy: https://ezzeddin.hashnode.dev/fastapi-tailwind-sqlalchemy

[9]

Python 如何不作排序但保持数据有序: https://www.bitecode.dev/p/how-not-to-sort-in-python

[10]

用 Django 发送带有验证链接的电子邮件: https://delighto.hashnode.dev/send-verification-email-django

[11]

探索全球多样性:Pyetho — 用于了解国家及其语言的 Python 库: https://medium.com/@i18nsolutionspy/exploring-global-diversity-pyetho-python-library-for-language-and-country-insights-4a688958ea83

[12]

Pyetho: https://github.com/i18nsolutionspy/Pyetho

[13]

Polars:快如闪电的 DataFrame 库: https://realpython.com/polars-python/

[14]

深入学习数据结构与算法:C++、Swift、Python、Java、C#、JavaScript: https://dev.to/khaledhosseini/data-structures-and-algorithms-for-multi-language-programmers-c-swift-python-java-c-javascript-alp

[15]

https://pythoncat.top/tags/weekly: https://pythoncat.top/tags/weekly

[16]

fastapi-users:开箱即用的 FastAPI 用户管理库: https://github.com/fastapi-users/fastapi-users

[17]

upiano:命令行里的钢琴: https://github.com/eliasdorneles/upiano

[18]

hrequests:requests 库的替代品: https://github.com/daijro/hrequests

[19]

wisdomInterrogatory:智海-录问法律大模型: https://github.com/zhihaiLLM/wisdomInterrogatory

[20]

awesome-systematic-trading:一个精选的系统化交易列表: https://github.com/edarchimbaud/awesome-systematic-trading

[21]

Qwen-VL:阿里通义千问-VL 模型的官方库: https://github.com/QwenLM/Qwen-VL

[22]

h2ogpt:私人文档+图像的问答: https://github.com/h2oai/h2ogpt

[23]

refact:开源编码助手,支持自动补全、代码重构、代码分析: https://github.com/smallcloudai/refact

[24]

dify:创建自己的 AI 应用: https://github.com/langgenius/dify

[25]

dara:轻松创建交互式 Web 应用程序: https://github.com/causalens/dara

[26]

赞赏: https://img.pythoncat.top/wechat_code.png

[27]

买杯咖啡: https://www.buymeacoffee.com/pythoncat

[28]

投稿/建议通道: https://github.com/chinesehuazhou/python-weekly/issues/new

[29]

微信公众号: https://img.pythoncat.top/python_cat.jpg

[30]

博客: https://pythoncat.top

[31]

RSS: https://pythoncat.top/rss.xml

[32]

Github: https://github.com/chinesehuazhou/python-weekly

[33]

邮件: https://pythoncat.substack.com

[34]

Telegram: https://t.me/pythontrendingweekly

[35]

Twitter: https://twitter.com/chinesehuazhou

如果你觉得本文有帮助
请慷慨分享点赞,感谢啦

浏览 1654
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报