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入门及进阶笔记 Python 内置函数小结
Aug 09 Python
Python实现竖排打印传单手机号码易撕条
Mar 16 Python
Python中的默认参数详解
Jun 24 Python
Python实现对excel文件列表值进行统计的方法
Jul 25 Python
Python 绘图和可视化详细介绍
Feb 11 Python
详解python 字符串和日期之间转换 StringAndDate
May 04 Python
python xpath获取页面注释的方法
Jan 14 Python
快速解决pyqt5窗体关闭后子线程不同时退出的问题
Jun 19 Python
简单了解Python write writelines区别
Feb 27 Python
python属于解释型语言么
Jun 15 Python
Python自动化操作实现图例绘制
Jul 09 Python
Python干货实战之八音符酱小游戏全过程详解
Oct 24 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脚本的10个技巧(7)
2006/10/09 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
2014/04/10 PHP
自定义min版smarty模板引擎MinSmarty.class.php文件及用法
2016/05/20 PHP
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
2012/09/30 Javascript
js控制淡入淡出示例代码
2013/11/12 Javascript
JS简单获取客户端IP地址的方法【调用搜狐接口】
2016/09/05 Javascript
AngularJS的ng Http Request与response格式转换方法
2016/11/07 Javascript
微信小程序网络请求的封装与填坑之路
2017/04/01 Javascript
微信小程序 登录的简单实现
2017/04/19 Javascript
JavaScript中最常用的10种代码简写技巧总结
2017/06/28 Javascript
react开发教程之React 组件之间的通信方式
2017/08/12 Javascript
Vue v2.5 调整和更新不完全问题
2017/10/24 Javascript
JS实现的JSON序列化操作简单示例
2018/07/02 Javascript
vue 解决异步数据更新问题
2019/10/29 Javascript
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
2020/08/19 Javascript
python对离散变量的one-hot编码方法
2018/07/11 Python
python批量修改图片大小的方法
2018/07/24 Python
numpy向空的二维数组中添加元素的方法
2018/11/01 Python
python 3.3 下载固定链接文件并保存的方法
2018/12/18 Python
详解numpy的argmax的具体使用
2019/05/27 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
Python for循环与getitem的关系详解
2020/01/02 Python
python自动生成证件号的方法示例
2021/01/14 Python
英国第一豪华护肤品牌:Elemis
2017/10/12 全球购物
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
DTD的含义以及作用
2014/01/26 面试题
国家税务局领导班子对照检查材料思想汇报
2014/10/04 职场文书
公路局群众路线教育实践活动第一阶段工作汇报
2014/10/25 职场文书
2015民办小学年度工作总结
2015/05/26 职场文书
幼儿园元旦主持词
2015/07/06 职场文书
不要在HTML中滥用div
2021/05/08 HTML / CSS
MySQL为id选择合适的数据类型
2021/06/07 MySQL
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
特别篇动画《总之就是非常可爱 ~制服~》PV公开,2022年夏季播出
2022/04/04 日漫
Python 装饰器(decorator)常用的创建方式及解析
2022/04/24 Python