【问题标题】:How to count num letter appears in the word with reduce?如何用reduce计算单词中出现的num字母?
【发布时间】:2020-06-22 16:16:54
【问题描述】:

我试图了解下一个示例如何真正起作用。 这个功能基本上会统计字母在单词中出现的次数,可惜对我来说有点难以理解。我很想得到一些很好的解释。

def count_appearances1(letter, word):

    func = lambda counter,l: counter + 1 if l == letter else counter

    return reduce(func, word,0)

【问题讨论】:

标签: python-3.x reduce


【解决方案1】:

reduce(fun,seq) 函数用于将在其参数中传递的特定函数应用于传递的序列中提到的所有列表元素。

首先,将序列(单词)的第一个元素与字母进行比较,如果它们相同,则增加计数器。 重复此步骤,直到序列结束。

你也可以看到这个问题的答案click

希望这对您有所帮助..

【讨论】:

  • 感谢您的回答,这很有帮助。只有一件事我还不明白,reduce 中的第三个参数呢?在这里我传入 - 0 并立即连接到柜台,但这是为什么呢?下次我怎么知道第三个参数和第一个参数之间的连接?
  • 关于第三个参数,它是可选的,它的值默认放在可迭代之前。一些例子 -> (python-reference.readthedocs.io/en/latest/docs/functions/…)
猜你喜欢
  • 1970-01-01
  • 2013-12-10
  • 1970-01-01
  • 2019-06-12
  • 1970-01-01
  • 2021-12-27
  • 1970-01-01
  • 2021-12-12
  • 1970-01-01
相关资源
最近更新 更多