python中多层嵌套列表的拆分方法


Posted in Python onJuly 02, 2018

场景:有一个多层嵌套的列表如:[[23],[3,3],[22,22],1,123,[[123,a],2]] 拆分成:

def splitlist(list):
  '''
    现有一个列表,里面元素包括 数字,字母,列表,字典等元素,现在要将字典去掉,并将列表
    分解成字母,或数字元素如:[[1,2,3],2,3,[1,3,[12,22]],'a',12] 
    经函数处理后[1, 2, 3, 2, 3, 1, 3, 12, 22, 'a', 12]
    
  '''  
  alist = []
  a = 0
 
 
  for sublist in list:
    try: #用try来判断是列表中的元素是不是可迭代的,可以迭代的继续迭代
      for i in sublist:
        alist.append (i)
    except TypeError: #不能迭代的就是直接取出放入alist
      alist.append(sublist)
  for i in alist:
    if type(i) == type([]):#判断是否还有列表
      a =+ 1
      break
  if a==1:
    return printlist(alist) #还有列表,进行递归
  if a==0:
    return alist         
list=[[1,2,3],2,3,[1,3,[12,22,[2,3]]],'a',12,range(10)]
a = printlist(list)
print(a)

打印结果:

[1, 2, 3, 2, 3, 1, 3, 12, 22, 2, 3, 'a', 12, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

分析:运用递归一层一层的去掉嵌套列表的数

以上这篇python中多层嵌套列表的拆分方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python pass 语句使用示例
Mar 11 Python
python定时器(Timer)用法简单实例
Jun 04 Python
python实现矩阵乘法的方法
Jun 28 Python
Python 多线程Threading初学教程
Aug 22 Python
Python基于identicon库创建类似Github上用的头像功能
Sep 25 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
Sep 04 Python
Python实现Dijkstra算法
Oct 17 Python
python2与python3的print及字符串格式化小结
Nov 30 Python
nohup后台启动Python脚本,log不刷新的解决方法
Jan 14 Python
Python中的异常处理try/except/finally/raise用法分析
Feb 28 Python
python实现翻转棋游戏(othello)
Jul 29 Python
PyTorch中的torch.cat简单介绍
Mar 17 Python
python中int与str互转方法
Jul 02 #Python
用Python将一个列表分割成小列表的实例讲解
Jul 02 #Python
python绘制圆柱体的方法
Jul 02 #Python
Django开发中的日志输出的方法
Jul 02 #Python
Python中循环后使用list.append()数据被覆盖问题的解决
Jul 01 #Python
Django 连接sql server数据库的方法
Jun 30 #Python
python绘制直线的方法
Jun 30 #Python
You might like
php下实现农历日历的代码
2007/03/07 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例
2018/05/23 PHP
PHP+MySQL实现在线测试答题实例
2020/01/02 PHP
js类 from qq
2006/11/13 Javascript
jquery自动完成插件(autocomplete)应用之PHP版
2009/12/15 Javascript
DIV菜单层实现代码
2010/11/19 Javascript
jquery对ajax的支持介绍
2013/12/10 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
jquery加载图片时以淡入方式显示的方法
2015/01/14 Javascript
jquery控制表单输入框显示默认值的方法
2015/05/22 Javascript
浅谈javascript中onbeforeunload与onunload事件
2015/12/10 Javascript
不得不分享的JavaScript常用方法函数集(上)
2015/12/23 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
Vue实现双向绑定的方法
2016/12/22 Javascript
JS轮播图实现简单代码
2021/02/19 Javascript
JS抛物线动画实例制作
2018/02/24 Javascript
ionic使用angularjs表单验证(模板验证)
2018/12/12 Javascript
Angular8 实现table表格表头固定效果
2020/01/03 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
ReactRouter的实现方法
2021/01/25 Javascript
python执行shell获取硬件参数写入mysql的方法
2014/12/29 Python
利用python操作SQLite数据库及文件操作详解
2017/09/22 Python
对python中GUI,Label和Button的实例详解
2019/06/27 Python
python中将两组数据放在一起按照某一固定顺序shuffle的实例
2019/07/15 Python
Windows系统Python直接调用C++ DLL的方法
2019/08/01 Python
python开发入门——列表生成式
2020/09/03 Python
详解Scrapy Redis入门实战
2020/11/18 Python
html5 乒乓球(碰撞检测)实例二
2013/07/25 HTML / CSS
html5通过canvas实现刮刮卡效果示例分享
2014/01/27 HTML / CSS
Reebok俄罗斯官方网上商店:购买锐步运动服装和鞋子
2016/09/26 全球购物
Strathberry苏贝瑞中国官网:西班牙高级工匠手工打造
2020/10/19 全球购物
宾馆总经理岗位职责
2014/02/14 职场文书
文体活动实施方案
2014/03/27 职场文书
电子装配专业毕业生求职信
2014/04/23 职场文书
忠诚教育心得体会
2014/09/03 职场文书