























这是一个创建于 80 天前的主题,其中的信息可能已经有所发展或是发生改变。
很奇怪啊,我问 AI 的话,它总是说给变量加类型注解更好,说什么现代 Python 大型项目都这样做,Python 官方也推荐,但是我让它推荐几个项目,我去看源码,没有任何一个开源项目对变量写了类型注解,而且 AI 的代码也不会有对变量的类型注解。但实际上根本没有任何项目这样做,至少我找不到。
1 Muniesa 3 月 26 日 via Android函数返回值的类型注解写好了的话,一般变量就不用写了吧,我是这么理解的 |
2 kneo 3 月 26 日 via Android我也没见过。class 字段,函数签名,足够了。变量的类型提示很可能是 anti-pattern 。 |
3 shadowmeld 3 月 26 日我从开始学 Python ,就听 AI 的建议,推荐变量都加上类型注解,而且很多博客帖子都推荐,我后面看了越来越多别人的源码,发现根本没有项目给函数内部的变量写注解,我就很困惑,这不是所谓的“推荐的,现代的、更好维护” 的写法吗?结果根本没人这样做,我感觉费时费力的写法原来没有人这样写 |
5 AV1 3 月 26 日一般也就函数参数需要注解,变量、返回值都可以自动推导,不写影响不大。 |
6 songer 3 月 26 日基本只对函数的参数和返回值做注解,然后就是大量用 dataclass / pydantic 替代 dict tuple 。用上 mypy 。基本可以了 |
7 adoal 3 月 26 日因为有影响力的开源项目大多数都有不短的年份积累了。老项目没用上现代的东西很正常。 我看过用 Python 做业务类系统开发的本地草台小公司,类型注解写得很满。 |
8 maocat 3 月 26 日类型注解是 Python3.5 之后有的,刚出开,都认为不太成熟,大家都不敢用,大型项目基本都经历过 python2 的时代,一般都是在注释里解释参数,后来或多或少都很少补充类型了。可以没有,也不关键 |
9 deplives 3 月 26 日现在你看到的 python 大型项目已经有很多年的代码历史了,不是有人有精力去维护这些的 |
10 iorilu 3 月 26 日老项目没空加的 这东西可能加了没啥好处, 但会带来 bug |
11 Rush9999 3 月 26 日挺好奇,推荐哪几个项目啊? |
12 smlcgx 3 月 26 日 via iPhone这玩意应该属于不加没什么,但是错了会很麻烦的东西吧 |
14 aloxaf 3 月 26 日仔细看了下,LZ 说的是给「变量」加类型注解,这完全没必要,舍本逐末了。 Python 的类型注解并不强制检查,只要是内部变量 + 能自动推断出来,就没必要加。 |
15 fibroblast 3 月 27 日2.7 大型项目本来就难维护 |
17 kevinn 4 月 17 日连 c++ , java 都在用 auto 了,python 给变量加注解是要搞什么?? |
18 AFlash 5 月 13 日python 的注解不能像静态语言做类型检查,对于阅读代码,注解也只能是提示,变量命名明确也可以替代。作用有限的情况下就看个人了。 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。