【发布时间】:2018-10-28 11:02:43
【问题描述】:
下面的程序查找像 code/cope/coje 等单词并返回匹配数。但是我的返回函数没有给我一个输出。 print(len(matches)) 给出了正确的输出,但我需要使用 return。我在this question 中看到 'findall' 是一种更直接的方法,但我现在想使用 finditer。为什么这个返回语句不正确?当我编写程序来学习 python 时,我实际上经常面临这个问题。我无法从这些参考文献中找到答案 one,two
import re
mystr = "codexxxcmkkaicopemkmaskdmcone"
def count_code (char):
pattern = re.compile (r'co\we')
matches = pattern.finditer(char)
result = tuple (matches)
return len(result)
count_code(mystr)
count_code (mystr) 没有返回任何内容,也没有返回错误。见这里:repl.it
【问题讨论】:
-
您的
return语句看起来不错,但实际上您并没有在任何地方调用该函数。 -
“我无法选择答案” .... 选择东西不是你学习的方式。顺便问一下,这是你的代码吗?如果您能够自己定义一个函数,那么您应该知道需要调用该函数才能运行。 Python 没有“主要”概念。
-
此代码返回找到的匹配数。我们需要更多的代码来演示这个问题。你说,“print() 有效”,那是什么意思?
标签: python-3.x return