Python 潮流周刊#27:应该如何处理程序的错误? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
chinesehuazhou
V2EX    Python

Python 潮流周刊#27:应该如何处理程序的错误?

  •  
  •   chinesehuazhou 2023-11-18 16:48:27 +08:00 1608 次点击
    这是一个创建于 718 天前的主题,其中的信息可能已经有所发展或是发生改变。

    你好,我是猫哥。这里每周分享优质的 Python 、AI 及通用技术内容,大部分为英文。本周刊开源,欢迎投稿。另有电报频道作为副刊,补充发布更加丰富的资讯。

    产品推荐

    Walles.AI 是一款适用于所有网站的浏览器插件,支持 GPT4 问答、ChatPDF 、网页内容解释及翻译、生成高质量文章、与 Notion 等工具协同、在线摘要 Youtube 视频等。前往官网体验:安装地址

    文章&教程

    1 、将 Python 错误作为值:比较 Go 和 Rust 的使用模式

    文章比较了两种处理错误的方法:抛出错误和将错误作为返回值,并参照 Go 和 Rust 的处理模式,介绍如何在 Python 中实现将错误作为值返回。(附 1:两种风格的错误处理 分析了两种风格的优缺点及其适用场景;附 2:周刊第一期的 编程语言的四种错误处理方法 从语法、代码可读性、演变过程、运行效率角度对比了不同方案)

    2 、调试 Django 中的 CSRF 失败/403 禁止错误

    部署 Django 程序时的一个常见错误是 403 Forbidden ,通常由 CSRF 错误导致,文章介绍了导致这种错误的 7 种原因,并解读 Django 源码,详细梳理了它们的校验逻辑。

    3 、对 Python 环境和包管理工具的公正分析

    Python 中的虚拟环境和包管理工具实在是太多了!但是应该如何选择最适合自己需求的工具呢?作者全面分析了 5 个类别的 10 多款工具,希望减少用户在抉择上的困惑。(附:作者针对此主题的两场演讲 PyCon DE 2023EuroPython 2023

    Python 环境和包管理工具的分类

    4 、让我们一起创建一个 Python 调试器

    你是否好奇一个代码调试器是如何工作的?当设置断点后,程序触发它时会发生什么?调试器是程序员日常必备工具之一,但极少有人知道它是如何实现的。这是一个系列教程,已更新 5 篇文章。值得一提的是,作者使用了最新的 Python 3.12 PEP-669 功能。

    5 、揭开 Python 3.12 的面纱:Python 世界有哪些新东西?

    Python 3.12 已发布一个半月,你开始尝鲜了么?这篇内容全面的文章重点解读了新的几个 PEP ,让你对这个版本有更清晰的认识。

    6 、Python 的哈希表指南

    Python 的字典是一种“哈希表”,提供了高效灵活的数据存储和检索方法。文章介绍了这种数据结构及其工作原理,探讨了如何用 Python 实现哈希表并解决哈希冲突。这是一个系列文章,作者还写了堆、队列、栈、数组等数据结构的指南。

    7 、运行不可信的 Python 代码

    作者想自己实现一个简化版的不太安全的沙盒,文章介绍了它的运作方式,以及一些关键性问题的解决方案,即独立的进程 + seccomp + setrlimit 。(附:如何安全运行别人上传的 Python 代码? 这篇文章的方案是使用 Docker 的 Python SDK 来构建镜像,在 Docker 中执行代码)

    8 、了解 Linux cp 命令并用 Python 编程实现

    深入探讨了 Linux 中 cp 命令的工作原理,然后用 Python 实现了一个基础版本。从中可以看到高级编程语言提供的强大功能和简单性。

    9 、初学者应该用 Django ,而不是 Flask

    作者认为 Flask 虽然简单易用,但它可能会让初学者忽视 Web 开发的复杂性。Django 功能全面、生态系统成熟,更适合新手学习与提升生产力。

    10 、PEP-733:对 Python 公共 C API 的评估

    一则信息型的 PEP ,用于分享 C API 的信息,包括定义 C API 的用途、利益相关者及其使用场景和要求、C API 的优势、C API 的 9 项薄弱的问题。

    11 、让我们做一个类 JSON 语法的解析器

    作者出于编程乐趣的目的,定义了一组类似 JSON 的语法规则,然后使用 Python 逐一实现不同内容的提取与解析,开发了一个解析器。

    12 、一门编程语言应该有多大?

    在作者眼中,Python 1.5 是他能完全理解的最后一个版本,而之后的版本则使得语言越来越大。语言设计时添加新功能,如何权衡取舍?作者建议学习 C 语言的例子,让语言处于“最小进化”模式。

    PyCon China 2023今年国内 PyCon 将于 12 月在北京、上海、成都、杭州、重庆、深圳、广州联动举办。现在购票可享 7 折优惠:详情介绍

    项目&资源

    1 、CogVLM:多模态预训练模型

    一个强大的开源可视化语言模型 ( VLM ),CogVLM-17B 有 100 亿个视觉参数和 70 亿个语言参数,具有高性能,在多项跨模态基准测试中排名领先。( star 2.1K )

    CogVLM 在基准测试中的得分

    2 、< href="https://github.com/rezoo/movis" rel="nofollow">movis:用于生成与编辑视频的库

    让你通过 Python 代码生成各类视频,包括但不限于演示视频、动态图形、着色器艺术编码和游戏解说视频。支持视频编辑、音频剪辑、图层转换及添加特效等。

    3 、mirror:基于摄像头内容,实时回答问题

    这是一个 Web APP ,可将摄像头视频流传给 AI ,让它分析内容并实时回答你提出的问题。100% 本地和私有,Web UI 是用 gradio 构建,多模态 AI 模型是 Bakllava

    4 、vimGPT:使用 GPT-4V 和 Vimium 浏览网页

    Vimium 是一个 Chrome 插件,可让你仅用键盘浏览网页,借助它,可以不将浏览器 DOM 传给大模型,仅用 GPT-4V 的视觉功能来浏览网页。( star 1.8K )

    使用 GPT-4V 和 Vimium 浏览网页

    5 、twitter_user_tweet_crawler:无需调用 Twitter API ,爬取用户推文

    使用 selenium 模拟浏览器操作,可抓取用户推文并保存静态资源到本地,无需调用 Twitter API 。(投稿自 @kaixinol

    6 、RSS-OPML-to-Markdown:将 OPML 文件转化为易读的 Markdown 格式

    经常有人分享自己 RSS 列表导出的 OPML 文件,但这难以阅读也不宜直接拿去导入自己的阅读器。这个项目将 RSS 源的概要和一些统计信息输出成 markdown 表格,方便你按需订阅。(投稿自 @AboutRSS

    7 、MyHeyGen:视频翻译工具

    一个平民版视频翻译工具,音频翻译、翻译校正、视频唇纹合成全流程解决方案。

    8 、awesome-python-repo-stats:统计“awesome-python”列表中项目的信息

    awesome-python 是一个拥有 187K star 超火爆的项目,收录了大量框架、库、软件和资源。这个项目是对它收录内容的统计分析,每日更新,可在线查看统计表。

    9 、outlines:引导式文本生成

    一个用于生成神经文本的库,可视为 transformers 库中 generate 方法的替代品。( star 3.3K )

    10 、marimo:下一代 Python notebook

    全新的 notebook 项目,其每个 notebook 都可作为交互式 Web 程序共享,可浏览数据、运行实验、构建工具和部署应用。

    marimo 使用演示

    11 、Finance:150+ 量化金融 Python 程序

    一个资源集合项目,帮助你收集、操纵和分析股市数据。( star 1.2K )

    12 、tacticalrmm:一个远程监控和管理工具

    一个远程监控和管理工具,使用 Django 、Vue 和 Go 构建。类似 Teamviewer 的远程桌面控制、远程文件传输、远程执行命令和脚本、查看日志、告警管理、支持自动化。( star 2.3K )

    播客&视频

    1 、CPython 的 JIT 编译器

    Guido 本周在 X 上分享了这则视频,视频作者介绍了他们规划给 Python 3.13 开发一个 JIT 编译器!(附:演讲视频的文稿

    2 、The Python Show 第 21 期:Sanic - 异步 Web 框架

    Sanic 是支持异步编程的 Python Web 框架,能够快速构建和运行。这期播客的嘉宾是 Sanic 的维护者之一,话题包括 Web 框架对比、消息规范、Mayim(单向 ORM )。

    本文首发于:https://pythoncat.top/posts/2023-11-18-weekly

    欢迎订阅

    • 微信公众号:除更新周刊外,还发布其它原创作品,并转载一些优质文章。(可加好友,可加读者交流群)
    • 博客RSS:我的独立博客,上面有历年原创/翻译的技术文章,以及从 2009 年以来的一些随笔。
    • Github:你可以获取本周刊的 Markdown 源文件,做任何想做的事!
    • 邮件:在 Substack 上开通的频道,满足你通过邮件阅读时事通讯的诉求。
    • Telegram:除了发布周刊的通知外,我将它视为一个“副刊”,补充发布更加丰富的资讯。
    • Twitter:我的关注列表里有大量 Python 相关的开发者与组织的账号。
    1 条回复    2023-11-21 09:35:13 +08:00
    wingor2015
        1
    wingor2015  
       2023-11-21 09:35:13 +08:00
    辛苦啦,谢谢分享
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1108 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 17:54 PVG 01:54 LAX 09:54 JFK 12:54
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86