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将xml xsl文件生成html文件存储示例讲解
Dec 03 Python
Python基础之getpass模块详细介绍
Aug 10 Python
python用pandas数据加载、存储与文件格式的实例
Dec 07 Python
对python中list的拷贝与numpy的array的拷贝详解
Jan 29 Python
对python生成业务报表的实例详解
Feb 03 Python
python利用7z批量解压rar的实现
Aug 07 Python
Python脚本操作Excel实现批量替换功能
Nov 20 Python
python图形开发GUI库pyqt5的基本使用方法详解
Feb 14 Python
Python实现电视里的5毛特效实例代码详解
May 15 Python
如何利用python发送邮件
Sep 26 Python
M1芯片安装python3.9.1的实现
Feb 02 Python
Python中全局变量和局部变量的理解与区别
Feb 07 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 魔术方法使用说明
2009/10/20 PHP
zen cart新进商品的随机排序修改方法
2010/09/10 PHP
php array_intersect比array_diff快(附详细的使用说明)
2011/07/03 PHP
php中mysql操作buffer用法详解
2015/03/19 PHP
php设置页面超时时间解决方法
2015/09/22 PHP
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
2015/10/01 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
2016/03/31 PHP
PHP实现留言板功能的详细代码
2017/03/25 PHP
全面了解JS中的匿名函数
2016/06/29 Javascript
jQuery实现的checkbox级联选择下拉菜单效果示例
2016/12/26 Javascript
MUI 上拉刷新/下拉加载功能实例代码
2017/04/13 Javascript
微信小程序之前台循环数据绑定
2017/08/18 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
javascript简单实现深浅拷贝过程详解
2019/10/08 Javascript
javascript实现简易的计算器
2020/01/17 Javascript
jQuery实现图片切换效果
2020/10/19 jQuery
vue-quill-editor插入图片路径太长问题解决方法
2021/01/08 Vue.js
Node使用koa2实现一个简单JWT鉴权的方法
2021/01/26 Javascript
[15:57]教你分分钟做大人:斧王
2014/10/30 DOTA
在Python中使用lambda高效操作列表的教程
2015/04/24 Python
python使用post提交数据到远程url的方法
2015/04/29 Python
Python字典,函数,全局变量代码解析
2017/12/18 Python
python实现将一个数组逆序输出的方法
2018/06/25 Python
Python 抓取微信公众号账号信息的方法
2019/06/14 Python
Python一键安装全部依赖包的方法
2019/08/12 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
使用TFRecord存取多个数据案例
2020/02/17 Python
Python Numpy中数据的常用保存与读取方法
2020/04/01 Python
Python使用jpype模块调用jar包过程解析
2020/07/29 Python
python uuid生成唯一id或str的最简单案例
2021/01/13 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
Shopee新加坡:东南亚与台湾电商平台
2019/01/25 全球购物
课外活动实习计划
2015/01/19 职场文书
水电施工员岗位职责
2015/04/11 职场文书
Python实现照片卡通化
2021/12/06 Python