Python 3.12 的 5 大实用新特性

333 天前
 zywscq
  1. 一种新的类型声明来创建类型别名
  2. 更精确的 **kwargs 类型标注:结合 TypedDict 和 Unpack"
  3. f-字符串的功能更加强大了
  4. 新的 @override 装饰器
  5. 部分错误信息能提供更多详情

详情参阅本篇英文文章: https://medium.com/techtofreedom/5-handy-python-3-12-new-features-that-improve-your-coding-experience-fe2d6e1f05b4?sk=3a754a89024869c97691d48b87a31870

4377 次点击
所在节点    Python
16 条回复
passive
333 天前
越来越有 20 年前的 Perl 的感觉了
Goooooos
333 天前
f 字符串的功能看着更复杂了
popil1987
333 天前
再加就木有简单性了,新人不愿使用了,也别多线程了,最多使劲增加性能就好了。语法方面真的比 javascript 好多了
RVRGnXxwawP5kwKW
333 天前
@popil1987 同感。js 那语法,头皮发麻。
june4
333 天前
不同感,不如 js ,语法更简单,表达力更强(多行匿名函数等),包系统更简单方便,ts 类型强得多,性能更是数量级碾压。
NessajCN
333 天前
语法方面啥时候 lambda 能跟 () => {} 一样好用就好了
Muniesa
333 天前
@popil1987 我倒觉得还好,因为简单的语法都还在,全靠简单的语法也能完成大部分任务,新人刚学也用不上类型标注装饰器这种东西
bestcondition
333 天前
@NessajCN 不行,因为 python 靠缩进区分代码块
009694
333 天前
@popil1987 简单性又不是语法决定,是抽象决定的。。c 只有十几个关键字,半小时就能全部学完,c 简单吗?
565656
333 天前
@Goooooos #2 挺好的,不用套单引号双引号了,自动识别
DOLLOR
333 天前
@popil1987
python 好好当个胶水就好了,没必要追求性能。因为追求性能,也是有代价的,JS 就是个例子。
em70
333 天前
用了这些新特性的库,要求至少 3.12,适配环境成本就高了,能不用尽量不用
crackidz
333 天前
@DOLLOR 你是指所有都用 JS 重写吗
DOLLOR
333 天前
@crackidz JS 性能好,但也要在别的地方付出相应的代价。比如更高的内存占用,更大的运行时体积,而且 JS 调用 C/C++模块也不如 python 方便。
F7TsdQL45E0jmoiG
332 天前
python 越来越变味儿,捏着鼻子用
vialon17
332 天前
感觉把 glc 干掉,把性能优化下,py 会更加完美点;
语法糖方面其实做的挺好的,感觉不需要添加新的 feature 。
XIVN1987
332 天前
这 5 个更新也没添加什么新东西

1 、这个还挺合理的,,看起来也很简单、清晰,,没啥学习成本
2 、这个理由很充分,,但感觉加 Unpack 没必要,,也许未来会简化语法(就比如 3.10 中使用 int | str 取代原有的 Union[int, str])
3 、这个也没啥学习负担吧,,就是 f-string 里相同括号可以嵌套了
4 、就添加了一种装饰器而已,,装饰器属于 Python 基本语法了,,
5 、这个就更没学习成本了。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1002944

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX