递归函数的调用,求嵌套列表的所有长度之和
def nest_list_len(input_list): if isinstance(input_list,list): length = 0 length = length +len(input_list) for new_list in input_list: if isinstance(new_list,list): length += nest_list_len(new_list) return length else: return 0 if __name__ == '__main__': # 返回a中所有list元素的长度的和。4 + 3 + 3 = 10 a = ['spam!', 1, ['Brie', 'Roquefort', 'Pol le Veq'], [1, 2, 3]] print nest_list_len(a) # 输出10 a = ['spam!', 1,[['Brie'], 'Roquefort', 'Pol le Veq'], [1, 2, 3]] print nest_list_len(a) # 输出11 a = 5 # 输出0 print nest_list_len(a) # 输出0
isinstance(a,list):判断a是否是一个列表;
len(a):求a的长度。