社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python 发展趋势:与 Rust 深度融合、更易于编写 Web 应用

程序员专栏 • 2 年前 • 316 次点击  
👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇



最近的 Pycoder‘s Weekly 中有一篇《Three Python trends in 2023》,它介绍了当下较为热门的三个话题。我简略翻译/摘录出来,分享给大家。

趋势一:Python🤝Rust

Rust 对 Python 技术生态的影响越来越大了。关键的赋能者是  PyO3,它为 Python 提供了 Rust 绑定。有了 PyO3 后,Python 可以轻松调用 Rust 代码,同时 Rust 也能执行 Python 代码。

另外,下面的工具在进一步加深这两门语言的友谊:

  • pydantic-core:pydantic v2 的校验核心。pydantic 的作者 Samuel Colvin 将在 Pycon 2023 上发表相关演讲。
  • ruff:速度极快的 linter。它拥有几乎与 Flake8 相同的功能,包括一些流行的插件。此外,它具有与 autoflake、isort、pydocstyle 和 pyupgrade 等工具相同的功能。因此,它基本上是检测 Python 代码的瑞士军刀。
  • polars:更快的 DataFrames,是超级广泛使用的 pandas 的性能竞争对手。
  • Robyn:带 Rust 运行时的异步 Python web 框架。这有一篇博客关于《Robyn 的 2023 年路线图》。

Rust 目前的热度极高,未来它将融入到更多 Python 相关的项目和工具中。Python + Rust 的组合在未来的就业市场上,也可能有很高的需求。

趋势二:Web 应用

从历史上看,用户界面并不是 Python 的强项。然而,最近机器学习和数据应用的兴起,催生了一批”使用纯 Python 的 Web UI”框架,例如 Streamlit、NiceGUI 和 Pynecone。这样的框架为 Pythonistas 提供了构建 Web 应用的快捷方式,不再需要学习 JavaScript+HTML+CSS 技术栈。

另一条线路是浏览器中的 Python。通过 Pyodide、PyScript和相关工具,这已经实现了。它的基础推动者是与所有主流浏览器兼容的 WASM (WebAssembly)。在写本文时, CPython 源码库中已经有了对 CPython 的 WASM 构建的实验性支持。如果你想深入了解,可以查看 Python 3.11 in the Web Browser,这是 Cristian Heimes 在 PyConDE 2022 上的演讲。

WASM 的故事还处于早期阶段,但它有着巨大的潜力,将使 Python 更容易访问并支持新的使用场景。我希望在不久的将来这个领域会有大量的创新。

趋势三:类型安全

CPython 对类型的支持在不断发展。例如,Python 3.10 发布了 4 个与类型相关的 PEP, 3.11 发布了 5 个。此外,PyCon 还有专门的 Typing Summit。与此同时,与类型相关的工具已经成熟化和多样化。例如,现在有一大把静态类型检查器可供选择(例如 mypy、Pyright、pytype 和 Pyre)。此外,一些包(例如 pydantic)可以在运行时巧妙地利用类型信息。(延伸阅读:介绍几款 Python 类型检查工具

*args, **kwargs 的时代即将结束,它们将被带有类型注释的签名所取代。类型极大地提高了代码可读性。当可读性与便利的 IDE 相结合,阅读庞大的 Python 代码库将变得相对容易。另一方面,在习惯了类型信息带来的超能力之后,无类型的代码库会更让人感到难受。

无论现今和未来的趋势如何,Python 比以往任何时候都更受欢迎。在写本文时(2023 年 2 月),PyPI 中有 431k 个项目和 665k 个用户。在“how often language tutorials are searched in Google”中,Python 以 27.93% 的份额领先(来源)。Reddit 上的 r/Python 话题有 1.1 万订阅,r/learnpython 有 68 万订阅。

相关链接:

[1] Three Python trends in 2023: https://blog.jerrycodes.com/python-trends-in-2023/
[2] PyO3: https://github.com/PyO3/pyo3
[3] pydantic-core:  https://github.com/pydantic/pydantic-core
[4] 在 Pycon 2023 上发表相关演讲: https://twitter.com/samuel_colvin/status/1615044553425424384
[5] ruff: https://github.com/charliermarsh/ruff
[6] polars: https://github.com/pola-rs/polars
[7] Robyn: https://github.com/sansyrox/robyn
[8] Robyn 的 2023 年路线图: https://sansyrox.medium.com/robyns-plans-for-2023-7eda52011563
[9] Streamlit: https://github.com/streamlit/streamlit
[10] NiceGUI: https://github.com/zauberzeug/nicegui
[11] Pynecone: https://github.com/pynecone-io/pynecone
[12] Pyodide: https://pyodide.org/en/stable/
[13] PyScript: https://pyscript.net/
[14] Python 3.11 in the Web Browser: https://youtu.be/oa2LllRZUlU
[15] 来源: https://pypl.github.io/PYPL.html


-End-

最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!



点击👆卡片,关注后回复【面试题】即可获取

在看点这里好文分享给更多人↓↓

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/152144
 
316 次点击