您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

排空或丢弃发电机而不循环?

排空或丢弃发电机而不循环?

有一种方法稍微快一点:

collections.deque(chan, maxlen=0)

但是,您的代码使意图更加清晰,因此您应该衡量是否存在明显的差异。我几乎总是喜欢您的代码

(不过,我永远不会将其_用作变量名。它_会使人感到困惑,在交互式外壳程序中与通用gettext别名发生冲突。)

:这是一些简单的时间:

In [1]: import collections

In [2]: a = range(100000)

In [3]: timeit reduce(lambda _, __: None, a)
100 loops, best of 3: 13.5 ms per loop

In [4]: timeit for dummy in a: pass
1000 loops, best of 3: 1.75 ms per loop

In [5]: timeit collections.deque(a, maxlen=0)
1000 loops, best of 3: 1.51 ms per loop
其他 2022/1/1 18:47:08 有413人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶