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实现的tab文件操作类分享
Nov 20 Python
Linux系统上Nginx+Python的web.py与Django框架环境
Dec 25 Python
Python中的sort()方法使用基础教程
Jan 08 Python
Python中join函数简单代码示例
Jan 09 Python
使用python获取电脑的磁盘信息方法
Nov 01 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
Jun 08 Python
Python Pandas中根据列的值选取多行数据
Jul 08 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
python 实现目录复制的三种小结
Dec 04 Python
python正则表达式re.match()匹配多个字符方法的实现
Jan 27 Python
python学习之使用Matplotlib画实时的动态折线图的示例代码
Feb 25 Python
pytorch实现加载保存查看checkpoint文件
Jul 15 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持久连接mysql_pconnect()函数使用介绍
2012/02/05 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
php实现文件与16进制相互转换的方法示例
2017/02/16 PHP
PHP实现将标点符号正则替换为空格的方法
2017/08/09 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
下载站控制介绍字数显示的脚本 显示全部 隐藏介绍等功能
2009/09/19 Javascript
js对table的td进行相同内容合并示例详解
2013/12/27 Javascript
jQuery实现列表自动滚动循环滚动展示新闻
2014/08/22 Javascript
jquery实现弹出层登录和全屏层注册特效
2015/08/28 Javascript
微信公众号支付H5调用支付解析
2016/11/04 Javascript
vue使用 better-scroll的参数和方法详解
2018/01/25 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
vue实现自定义多选与单选的答题功能
2018/07/05 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
layer弹窗在键盘按回车将反复刷新的实现方法
2019/09/25 Javascript
Vue指令实现OutClick的示例
2020/11/16 Javascript
JavaScript事件概念详解(区分静态注册和动态注册)
2021/02/05 Javascript
[01:32]2014DOTA2西雅图邀请赛 CIS我们有信心进入正赛
2014/07/08 DOTA
[10:21]2018DOTA2国际邀请赛寻真——Winstrike
2018/08/11 DOTA
[49:35]KG vs SECRET 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
python将多个文本文件合并为一个文本的代码(便于搜索)
2011/03/13 Python
Pandas 合并多个Dataframe(merge,concat)的方法
2018/06/08 Python
详解python while 函数及while和for的区别
2018/09/07 Python
python 搭建简单的http server,可直接post文件的实例
2019/01/03 Python
python 发送和接收ActiveMQ消息的实例
2019/01/30 Python
Python Django框架url反向解析实现动态生成对应的url链接示例
2019/10/18 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
2021/02/02 Python
python实现计算图形面积
2021/02/22 Python
Html5 webview元素定位工具的实现
2020/08/07 HTML / CSS
时尚孕妇装:HATCH Collection
2019/09/24 全球购物
党员组织关系介绍信
2014/02/13 职场文书
初中生操行评语大全
2014/04/24 职场文书
2015年业务工作总结范文
2015/04/10 职场文书
投诉书格式范本
2015/07/02 职场文书
假期读书倡议书3篇
2019/08/19 职场文书
Python基础之数据类型知识汇总
2021/05/18 Python