大家有没有遇到过这样的一个问题,遍历多维数字列表,将所有偶数添加到新列表中,先想一想我们要怎么做?利用哪一种函数可以实现?相信大家心里都有答案了吧,有没有小伙伴和小编一样,使用递归函数即可解决的呢?如果有,那就看下是否和我的操作一样,或者看下谁的操作更好吧~
需求:遍历多维数字列表,偶数添加到新列表中。
listv=[1,2,3,[4,6,7,8,[10,21,22]]]
代码实现:
deffindEven(src,dest): foriteminsrc: ifisinstance(item,list): #当前元素为列表,继续调用 findEven(item,dest) elifitem%2==0:#求余 dest.append(item) listv=[1,2,3,[4,6,7,8,[10,21,22]]] dest=[] findEven(listv,dest) print(dest)
结果:
[2,4,6,8,10,22]
小编给大家总结下学习关于递归函数要点,首先是自己调用自己,其次是注意结束条件与调用深度,这样我们才可以灵活掌控递归函数哦~