我在python中编写了两个递归函数。
第一个接受参数,修改它们并返回一个值。
def Similarity(string, sstring1, index):
if condition1:
return index
if condition2:
#do something
Similarity(string, string1, index)
第二个接受参数并对全局变量执行操作。
def getData(i, value):
global dataList
if condition:
return list(suffixList)
#do something
getData(i, value)
这些函数完美地工作并执行我需要的精确计算但始终返回noneType。 我还没弄清楚原因。
答案 0 :(得分:9)
您没有返回任何内容。 始终使用return
语句从函数返回值。 Python 不使用函数中的最后一个语句作为返回值。
def getData(i, value):
global dataList
if condition:
return list(suffixList)
#do something
return getData(i, value)
在没有明确return
的情况下退出的函数会返回None
。