python findall返回的是列表吗_高质量python代码:考虑用生成器来改写直接返回列表的函数...

写在前面:内容参照自《Effective Python》,其实你完全可以直接去看书,什么?你不想自己看书,那么你也可以关注我,我会不定期从书中挑出常用到的有效方法分享出来,这样你就可以一边刷头条,一边学习知识,岂不美哉。

正文

如果函数要产生一系列结果,那么最简单的做法就是把这些结果都放在一份列表里,并将其返回给调用者。例如,我们要查出字符串中每个词的首字母,在整个字符串里的位置。下面这段代码,用 append 方法将这些词的首字母索引添加到 result 列表中,并在函数结束时将其返回给调用者。

eb93fef4f6f48906c081fb31a43a1091.png

输入一些范例值,以验证该函数能够正常运作:

6800e2889d9e108df3b2bc246dbdffa3.png

上面的 index_words 函数有两个问题。

第一个问题是,这段代码写得有点拥挤。每次找到新的结果,都要调用 append 方法。但我们真正应该强调的,并不是对 result.append 方法的调用,而是该方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值