0
"""
def permNums(inp,sec):
newInp = []
for i in inp:
for j in sec:
if j not in i: newInp.append(i+j) #I put the print after this line
return newInp
b = permNums(permNums(permNums(inp='word',sec='word')))
print b
"""
def permNums(inp):
newInp = []
for i in inp:
for j in 'word':
if j not in i: newInp.append(i+j)
return newInp
b = permNums(permNums(permNums(inp='word')))
print b
我看到它的代码已被注释掉,没有代码的代码应该是等价的。注释掉的代码会给我一个错误,说我只给了1个参数而不是2个。我在哪里出错了?为什么我的递归函数没有第二个参数?
我试图把打印功能之后
if j not in i: newInp.append(i+j)
右,中注释掉的代码,发现最里面的功能不被调用但随后给出了在第2递归的错误可能是因为它不采取“秒'作为一个论点..有人可以为我清除这个请。
这不是正好在你的代码的结构,但可以接受并返回一个元组'( newInp,sec)'from来匹配函数签名newInp,并且嵌套调用将是'permNums(permNums(permNums(('word','word'))))[0]'。 – markw 2014-11-02 15:58:01