编程语言
首页 > 编程语言> > 在Python中将迭代器与丢弃匹配

在Python中将迭代器与丢弃匹配

作者:互联网

有什么办法可以做到这一点:

a, b, ... = count()

这个想法是匹配(在这种情况下,是无限的)迭代器的前两个值,并丢弃其余的值.

我能做的最好的就是笨拙的:

a, b = islice(count(), 0, 2)

这需要您计算左侧的条目数.

我有没有很酷的技巧?

解决方法:

不,除非您明确告知所需的元素数量,否则没有简单的方法.

在Python想法邮件组中进行了很多讨论(我认为是在去年年底,他们引入the enum library时),没有人同意解决该问题的方法.

对于有限迭代器,在Python 3上可以使用:

a, b, *_ = thing()

_变量可以忽略的地方.

标签:iterator,python,pattern-matching
来源: https://codeday.me/bug/20191123/2066150.html