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

什么时候不是使用python生成器的好时机?

什么时候不是使用python生成器的好时机?

1)您需要访问数据 时间(即高速缓存的结果,而不是重新计算它们的):

for i in outer:           # used once, okay to be a generator or return a list
    for j in inner:       # used multiple times, reusing a list is better
         ...

2)您需要 (或除正向顺序之外的任何访问):

for i in reversed(data): ...     # generators aren't reversible

s[i], s[j] = s[j], s[i]          # generators aren't indexable

3)您需要 字符串(这需要对数据进行两次传递):

s = ''.join(data)                # lists are faster than generators in this use case

4)您使用的 有时无法像正常函数调用和列表操作那样优化生成代码

python 2022/1/1 18:41:59 有279人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

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

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

请先登录

推荐问题


联系我
置顶