以新行方式在列表中打印元素的递归方法

时间:2014-03-26 21:01:17

标签: python recursion

到目前为止我所拥有的:

def print_nested_list(input):
    """Prints out every single string in input, one per line."""
    if type(input) is list
           for item in input

感谢您的回复 - 我得到的不是仅仅使用for循环,我应该将其与调用print_nested_list函数结合使用。

所以要完成测试用例:

print_nested_list(['cs1110'])
print_nested_list(['this', ['is', 'a'], 'list', ['list', 'list' ]])
print_nested_list([[['cs1110', 'opython'], 'nested'], 'recursion', 'test'])

澄清一下,最后一个测试用例应如下所示:

cs1110
opython
nested
recursion
test

1 个答案:

答案 0 :(得分:1)

我想你想这样做:

def print_nested_list(input_list):
    if type(input_list) is list:
        for item in input_list:
            print_nested_list(item)
    else:
        print input_list

mylist = [[['cs1110', 'opython'], 'nested'], 'recursion', 'test']
print_nested_list(mylist)

这种情况下的输出是:

cs1110
opython
nested
recursion
test