擅长:python、mysql、java
<p>不是以类似的方式,但是您可以尝试访问iterable的第一项。如果引发异常,iterable为空。这种方法被称为EAFP方式(<em>更容易请求原谅而不是允许。</em>)。或者,如果iterable为空,则可以通过检查布尔值来检查iterable是否为空。话虽如此,对于迭代器可以使用<code>next()</code>方法,对于iterables可以使用索引(<code>__getitem__</code>)等</p>
<pre><code># Easier to ask for forgiveness than permission.
In [41]: try:
...: item[0]
...: except:
...: print("empty list")
empty list
</code></pre>
<p>#或</p>
<pre><code>In [45]: items = iter([])
In [46]: try:
...: next(items)
...: except StopIteration:
...: print("empty list")
...:
empty list
</code></pre>