十年前写 C++ 的时候,觉得函数参数竟然还要用 XXXOptions 来定义太不方便了,感觉 Python 的 *args 和 **kwargs 太方便啦。十年后写 TypeScript/Python 的时候,恨不得把所有字符串常量都用 Enum 定义了,把所有的数据结构都用 interface/pydantic 定义。
Python 中 Iterator和Iterable的区别 Python中 list,truple,str,dict这些都可以被迭代,但他们并不是迭代器。 为什么? 因为和迭代器相比有一个很大的不同,list/truple/map/dict这些数据的大小是确定的,也就是说有多少事可知的。但迭代器不是,迭代器不知道要执行多少次,所以可以理解为不知道有多少个元素,每调用一次...