考虑用生成器来改写直接返回列表的函数

def index_words(text):

        result = []

        if text:

               result.append(0)

        for index,letter in enumerate(text):

               if letter == ' ':

                    result.append(index+1) 

        return result

可以改写成

def index_words(text):

       if text:

            yield 0

        for index,letter in enumerate(text):

            if letter == ' ';

                yeild index+1

result = list(index_words(text))

用列表的问题:1.大量代码都在操作列表,与实际问题无关

                            2.一次放入所有结果,可能会使用过多内存导致奔溃

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,766评论 0 38
  • 2.相等运算符 3.is:同一性运算符 #避免将is运算符用于比较类似数值和字符串这类不可变值,由于Python内...
    mydre阅读 3,971评论 0 1
  • 8月22日-----字符串相关 2-3 个性化消息: 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消...
    future_d180阅读 4,554评论 0 1
  • 写在前面的话 代码中的# > 表示的是输出结果 输入 使用input()函数 用法 注意input函数输出的均是字...
    FlyingLittlePG阅读 8,247评论 0 9
  • 一、To B产品,为什么要办行业沙龙? 办行业沙龙,是To B产品推广与提高影响力的有效手段。任何产品,总是需要推...
    李鑫2020阅读 5,640评论 1 17

友情链接更多精彩内容