你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。本周刊开源,欢迎
投稿。另有
电报频道作为副刊,补充发布更加丰富的资讯,欢迎关注。
🐱AI 工具
你是否想顺滑地使用当下最火热的大模型 ChatGPT-4、Midjourney V6、Dall·E 3、文心一言 4.0 和 Gemini Pro?
想要破除上网魔法?想要降低使用成本?想在同一个平台上使用多个大语言模型?我推荐以下这个好用的工具,它都能满足:
这个服务刚刚推出,推广期间优惠价 298,推广结束将涨价到 498。扫描上方二维码,即可免费试用,大家觉得效果满意后,再考虑付费。
🦄文章&教程
这篇文章让我有种“你不了解的行业内幕”的感觉。小公司还在坚持用 Python 2.7 + Django 1.8,竟支撑每年几个亿的交易额。作者还分享了几个项目,我的感受是:也许你不需要考虑太多“xx语言更好”,就选自己熟悉的,专注于业务实现就好。
Python 字符串既允许双引号也允许单引号,甚至可以三引号。这很灵活,但是对于有强迫症的标准制定者来说,这也是引发冲突的矛盾点。这篇文章分享的故事很有意思,推荐一读!
为什么需要用上下文管理器?它能解决哪些问题?文章还介绍了上下文管理器协议、with
语法糖、使用contextlib
实现上下文管理器、四个很实用的使用案例。
deque
是collections
模块下的一种双向队列数据结构,功能与list
很相似,适宜需要在两端快速添加或删除的场景。这篇教程介绍了它的基本用法与一些高级使用案例。
Python 在运行时才检查类型,而且强调的是对象的行为而非类型,因此不怎么提注重类型安全的“泛型”。但是,Python 也支持泛型,文章介绍了如何用typing
模块实现泛型函数和泛型类。
Gevent
是基于 greenlet
这个轻量级的协程实现的高性能网络库。文章介绍了 Gevent 的常见陷阱以及解决方案。
pickle
是 Python 用作序列化的标准库,但它作反序列化时存在重大的安全风险!文章介绍了它的工作原理、安全风险的根源、机器学习领域合作设计了safetensors
格式作安全替代。
这篇教程分别使用 JavaScript 和 Python 开发电子书搜索引擎,依赖Glitter
(一个使用Tendermint
构建的去中心化数据库服务),使用 React 开发展示搜索结果的页面。
很多编程语言都有import
关键字,其作用也类似,但是它们背后的运行机制会有哪些区别呢?文章分析了 Java 和 Python 中 import 的异同点,可加深你对这个话题的理解。
pdm
是 Python 中极好用的依赖管理工具,是国内开发者@frostming 的作品。作者计划写一系列关于它内部实现的文章,这是第一篇,介绍了 Lockfile 是什么、Lockfile 是如何生成的?
Python 有指针么?答案取决于你如何理解“指针”。作者简短回答,却一针见血。Python 没有 C 语言经典的指针操作,但 Python 的每个变量都是一个指针,即一切都是隐含的指针。(附:
有个项目 “将指针的地狱引入 Python”,跟下方的花括号版 Python 一样画蛇添足)
无 GIL 特性终于在本周
合入 Python 的主分支了!分享一篇深度介绍 GIL 的长文,理解 GIL 的工作原理、帮助预测并行性瓶颈的位置,文中使用了很多线程时序分析图,便于理解。
🐿️项目&资源
无需前端经验,快速构建跨平台的、支持多用户、实时的单页应用(SPA);没有 SDK,基于 IDE或文本编辑器即可开发,前端使用 Flutter UI,后端目前支持 Python,计划支持 Go 和 C#。(star 8.7K)(投稿自@bear)
一个包括各种集成、配置和模块的 Python 项目模板,特点有:使用copier
作项目设置与模板更新、使用pdm
管理依赖及虚拟环境、使用 dev container 作容器化、使用 mypy 和 ruff 等等常用技术栈。(投稿自@huxuan_org)
构建在duktape
引擎上的 JS 解释器,用于在 Python 中执行 JS 代码。无其它外部依赖,内置了常用的转译器(TypeScript、JSX、LESS、CoffeeScript),还支持传参、运行多个脚本、全局解释器、使用require
加载模块、从 npmjs.org 安装软件包等功能。