Python通过递归函数输出嵌套列表元素


Posted in Python onOctober 15, 2020

1.先用 for 循环取

for item in l:
  if isinstance(item ,list):
    for newitem in item:
      print(newitem)
  else:
    print(item

输出:
1
2
3
4
5
6

#利用 for 循环取值,有几层嵌套就要写几层 for 循环,否则不识别。
l=[1,2,[3,4],[5,6,[7,8]]]
for item in l:
  if isinstance(item ,list):
    for newitem in item:
      print(newitem)
  else:
    print(item

输出

1
2
3
4
5
6
[7, 8]

2.递归函数实现:

递归函数实现:

def getitem(l):
  for item in l:
    if isinstance(item,list):
      getitem(item)
    else:
      print(item)

getitem(l)

输出:
1
2
3
4
5
6
7
8
9
10

变式1:遇到类表就缩进一次:

def getitem(l,level=0):
  for item in l:
    if isinstance(item,list):
      getitem(item,level+1)
    else:
      for tab in range(level):
        print('\t',end='' #输出一个 制表符,并且将 print 后面的换行符去掉,这样就是了缩进
      print(item)

getitem(l)

输出

Python通过递归函数输出嵌套列表元素

变式2:加入开启机制,是否缩进

def getitem(l,level=0,count=False):
  for item in l:
    if isinstance(item,list):
      getitem(item,level+1,count)
    else:
      if count:
        for tab in range(level):
          print('\t',end='' #输出一个 制表符,并且将 print 后面的换行符去掉,这样就是了缩进
        print(item)
    print(item)

getitem(l)

输出

1
2
3
4
5
6
7
8
9
10

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的文件夹清理程序分享
Nov 22 Python
python 队列详解及实例代码
Oct 18 Python
Python 专题一 函数的基础知识
Mar 16 Python
Python定时器实例代码
Nov 01 Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
Nov 10 Python
详解Django-auth-ldap 配置方法
Dec 10 Python
Python解决pip install时出现的Could not fetch URL问题
Aug 01 Python
python爬虫解决验证码的思路及示例
Aug 01 Python
python实现数据清洗(缺失值与异常值处理)
Dec 02 Python
Python cookie的保存与读取、SSL讲解
Feb 17 Python
Pytorch中.new()的作用详解
Feb 18 Python
python实现的分层随机抽样案例
Feb 25 Python
Python安装第三方库攻略(pip和Anaconda)
Oct 15 #Python
Python return语句如何实现结果返回调用
Oct 15 #Python
python 进程池pool使用详解
Oct 15 #Python
python 输入字符串生成所有有效的IP地址(LeetCode 93号题)
Oct 15 #Python
Python3使用 GitLab API 进行批量合并分支
Oct 15 #Python
10款最佳Python开发工具推荐,每一款都是神器
Oct 15 #Python
matplotlib教程——强大的python作图工具库
Oct 15 #Python
You might like
php中的实现trim函数代码
2007/03/19 PHP
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
9个javascript语法高亮插件 推荐
2009/07/18 Javascript
JavaScript中几种常见排序算法小结
2011/02/22 Javascript
javascript判断iphone/android手机横竖屏模式的函数
2011/12/20 Javascript
JS解决ie6下png透明的方法实例
2013/08/02 Javascript
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
js同比例缩放图片的小例子
2013/10/30 Javascript
jquery用data方法获取某个元素上的事件
2014/06/23 Javascript
jQuery Mobile弹出窗、弹出层知识汇总
2016/01/05 Javascript
使用vue编写一个点击数字计时小游戏
2016/08/31 Javascript
JavaScript中动态向表格添加数据
2017/01/24 Javascript
jQuery插件FusionCharts实现的3D柱状图效果实例【附demo源码下载】
2017/03/03 Javascript
Vue.js事件处理器与表单控件绑定详解
2017/03/20 Javascript
Vue.js学习笔记之常用模板语法详解
2017/07/25 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
微信小程序实现列表页的点赞和取消点赞功能
2018/11/02 Javascript
微信小程序如何调用新闻接口实现列表循环
2019/07/02 Javascript
如何在vue 中引入使用jquery
2020/11/10 jQuery
Python中optparse模块使用浅析
2015/01/01 Python
简单介绍Python中的decode()方法的使用
2015/05/18 Python
使用python实现rsa算法代码
2016/02/17 Python
Python使用pylab库实现画线功能的方法详解
2017/06/08 Python
python3+PyQt5重新实现QT事件处理程序
2018/04/19 Python
django组合搜索实现过程详解(附代码)
2019/08/06 Python
Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
2020/03/07 Python
Python+redis通过限流保护高并发系统
2020/04/15 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
加拿大的标志性百货公司:Hudson’s Bay(哈得逊湾)
2019/09/03 全球购物
买卖协议书范本
2014/04/21 职场文书
学雷锋活动倡议书
2014/08/30 职场文书
2014年学校教学工作总结
2014/12/06 职场文书
2015年幼儿园德育工作总结
2015/05/25 职场文书
python将图片转为矢量图的方法步骤
2021/03/30 Python