5.3 单行实现 for 死循环如何写? =============================== .. image:: http://image.iswbm.com/20200804124133.png 如果让你在不借助 while ,只使用 for 来写一个死循环? **你会写吗?** **如果你还说简单,你可以自己试一下。** … 如果你尝试后,仍然写不出来,那我给出自己的做法。 .. code:: python for i in iter(int, 1):pass **是不是傻了?iter 还有这种用法?这为啥是个死循环?** 关于这个问题,你如果看中文网站,可能找不到相关资料。 还好你可以通过 IDE 看py源码里的注释内容,介绍了很详细的使用方法。 原来iter有两种使用方法。 - 通常我们的认知是第一种,将一个列表转化为一个迭代器。 - 而第二种方法,他接收一个 callable对象,和一个sentinel 参数。第一个对象会一直运行,直到它返回 sentinel 值才结束。 那\ ``int`` 呢? 这又是一个知识点,int 是一个内建方法。通过看注释,可以看出它是有默认值0的。你可以在console 模式下输入 ``int()`` 看看是不是返回0。 由于int() 永远返回0,永远返回不了1,所以这个 for 循环会没有终点。一直运行下去。