【Python】有一个多层嵌套的列表 A = [1,2,[3,4,[‘434’,[…]]]]……

有一个多层嵌套的列表 A = [1,2,[3,4,[‘434’,[…]]]],请写一段代码遍历A中的每个元素并打印出来

0

2个回答

一个递归程序,亲测可行,别忘记点采纳本答案

def lst2str(lst):
    if type(lst)!=list:
        return str(lst)
    else:
        ll=len(lst)
        if ll==0:
            return "[]"
        res="["
        for i in range(ll-1):
            res+=lst2str(lst[i])+","
        res+=lst2str(lst[ll-1])+"]"
        return res

lst=[1,2,[3,4,5],6,7,[8,[9,10,11],12],[],[1]]
print lst2str(lst)

输出:[1,2,[3,4,5],6,7,[8,[9,10,11],12],[],[1]]

1
Moluth
Moluth 回复weixin_41642752: 这个是py2的代码,print 不需要加括号
6 个月之前 回复
weixin_41642752
Python-root 谢谢哒!不过print的时候漏了一个括号
6 个月之前 回复

一个基于生成器的解析 列表的小程序

def extract_list(x):
    for item in x:
        if isinstance(item, list):
            for i in extract_list(item):
                yield i
        else:
            yield item


x = ["a", ["b", ["c", "d"]]]
print [item for item in extract_list(x)]
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python多层嵌套转换为一维列表
1.递归方式 [1,2,[3,[4,5],6]] def expand_list(nested_list): for item in nested_list: if isinstance(item, (list, tuple)): for sub_item in expand_list(item): yield sub...
python3的一些笔试题
发表于2018年3月2日笔试题1.pyhon中,单引号,双引号,三引号的区别?python字符串通常有单引号('...')、双引号("...")、三引号("""...""")或('''...''')包围,三引号包含的字符串可由多行组成,一般可表示大段的叙述性字符串。在使用时基本没有差别,但双引号和三引号("""...""")中可以包含单引号,三引号('''...''')
多层嵌套列表转为单层list
最近在编写工具对csv文件进行自动化填充的时候,遇到一个比较有意思的小问题,作为一个函数返回值,将多个数据结果作为list元素返回,返回值就成了一个多层嵌套的list。 a = [arg1,arg2,[arg3,[arg4,],] 返回值作为修改填充的参数,在嵌套的列表中自然不适合提取遍历自动填充,因此就想到有没有方法将嵌套的list转成单层的列表便于数据提取。在没有现成模块方法的情况下,最简...
Python列表嵌套详解
cate = [path + x for x in os.listdir(path) if os.path.isdir(path + x)] >>> a=[x for x in range(10)] >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> a=[x for x in range(10) if x%2...
列表的嵌套
1. 列表嵌套 类似while循环的嵌套,列表也是支持嵌套的 一个列表中的元素又是一个列表,那么这就是列表的嵌套 schoolNames = [['北京大学','清华大学'], ['南开大学','天津大学','天津师范大学'], ['山东大学','中国海洋大学']] 2. 应用 一个学校,有3个办...
python 遍历多层列表
a = [[1,3,4],[4,5,65,[9,6,8]],96,8] def lis(z): for i in z: if isinstance(i,list): lis(i) else: print(i) lis(a) C:\Users\xgq\PycharmProjects\untitled\ve...
PYTHON-嵌套列表list的解析学习
一个3层嵌套列表m m=["a",["b","c",["inner"]]] 需要解析为基本的数据项a,b,c,inner 基本的取数据项方法: for i in m: print i这个只能取出第一层的a,和一个2层的嵌套列表["b","c",["inner"]] 结合内置函数和判断可以继续解析这个2层列表 for i in m: if isinstance(i,list):
[Python] 列表生成式
列表生成式 即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 >>> [x * x for x in range(1, 11)] #一定要有[] ,因为是列表,否则报错 [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] 写列表生成式时,把要生成的元素x * x放到前面,后面跟for...
一行代码实现输出 : 1,2,3,4,5,6,7,6,5,4,3,2,1
<br />方法一:<br />int print(int N , int  n ) <br />{<br />    return N + 1 - n && printf("%d/n", n) && (N = 1 + print(N, n + 1)) && (!(N - 1) || printf("%d/n", n));<br />}<br />    其中,N+1-n是用于结束递归,N=1+print(N,n+1)实现两个功能:一是使得n自增,二是使得只有当n=7时,N=1,其他任何时候都有N=2才会有
03列表、列表推导式及zip()函数
一、列表内元素的获取  列表[0]       数字索引位置   通过此可对列表元素进行调换&amp;gt;&amp;gt;&amp;gt; empty = [0,1,2,['小儿子','小西瓜'],4]&amp;gt;&amp;gt;&amp;gt; a = empty[3][1]&amp;gt;&amp;gt;&amp;gt; print(a)小西瓜二、列表的删除1 remove()     member.remove('元素名')2 del       (del...
python中多层嵌套列表的拆分
场景:有一个多层嵌套的列表如:[[23],[3,3],[22,22],1,123,[[123,a],2]] 拆分成: def splitlist(list):     '''         现有一个列表,里面元素包括 数字,字母,列表,字典等元素,现在要将字典去掉,并将列表         分解成字母,或数字元素如:[[1,2,3],2,3,[1,3,[12,22]],'a',12] 
(python)常见面试题
1、一行代码实现1--100之和 2、如何在一个函数内部修改全局变量 3、列出5个python标准库 os:提供了不少与操作系统相关联的函数 sys:  通常用于命令行参数 re:  正则匹配 math: 数学运算 datetime:处理日期时间 4、字典如何删除键和合并两个字典 执行结果 5、谈下python的GIL python的GIL是python的全局...
python递归函数输出嵌套列表的每个元素
 list1 = [1,2,[3,4,[5,6,[7,8,9]]]] 思路: 首先遍历这个列表,判断他的每个元素数据类型是否是list,这里用到isinstance() 如果这个元素数据类型是list,那么遍历并打印他的每一个元素 如果不是,那么调用函数继续判断。   isinstance(object, classinfo) 参数 object -- 实例对象。 classin...
list多层列表展开方法对比
方法一:https://blog.csdn.net/ytfy12/article/details/51162079 def printm(listin): abc = [] for ie in listin: if isinstance(ie,list): printm(ie) else: print(...
Python常用数据类型--字典(1/2 字典的概念,定义及存在意义)
Python常用数据类型--字典(1/2 字典的概念,定义及存在意义)一.字典的概念:无序的,可变的键值对集合。二.字典的定义1. 方式一:{key : value , key : value ... }{&quot;name&quot;:&quot;Jack&quot;,&quot;age&quot;:20}2. 方式二:fromkeys(S,v = None)【范例】字典的定义和使用。person = {&quot;name&quot;: &quot;Jack&quot;, &quot;age&quot
python列表切片和嵌套列表取值操作
给出列表切片的格式:[开头元素::步长] # 输出直到最后一个元素,(最后一个冒号和步长可以省略,下同) [开头元素:结尾元素(不含):步长] # 其中,-1表示list最后一个元素首先来看最简单的单一列表:a = [1,2,3,4] a[:] a[::] a[:3] a[1:3:2] a[3]输出依次为:[1,2,3,4] [1,2,3,4] [1,2,3] [2] 4注意,这里只有最后一个输...
python 多层嵌套列表 转成一维列表
如以下的嵌套列表: [1,[2,3],[4,[5,6]]] 因为不知道嵌套了多少层,常规的方式是写一个递归函数,对这个函数进行递归来生成一维列表。 后来发现,在python的compiler模块中,提供了类似功能的函数: &amp;gt;&amp;gt;&amp;gt; from compiler.ast import flatten &amp;gt;&amp;gt;&amp;gt; flatten(a) [1, 2, 3, 4, ...
关于python中列表的遍历和多层嵌套拆开(自用)
假设存在列表形如 list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] ,则 使用遍历查询列表元素 list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]]; for i in list_1: print(i);控制台输出[1, 2],[3, 4, 5],[6, 7],[8],[9] 将多...
[代码笔记] python 之嵌套列表(多维数组)之转置
def printlist(list): for x in list: print(x) list=[[1,2,3,4], [5,6,7,8], [9,10,11,12]]printlist(list) print('-----------------')list2=[[ y[x] for y in list ] for x in range(4)]#
python学习笔记--打印嵌套list中每个数据(遍历列表)
new_list = ["H1","H2",1999] for each_list in new_list: print (each_list); 遍历new_list列表中yu
Python 嵌套列表展开
问题1:对于列表形如 list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] 转化成列表 list_2 = [1, 2, 3, 4, 5, 6, 7, 8, 9] 的问题。Python实现:def flat2(): list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] list_2 = [] fo...
python中无限遍历在多维嵌套字典、列表的JSON中获取路径path跟对应的值——find_path(终极版)
真鸡儿痛苦,网上搜寻了一大堆,都没我想要的,要不是纯字典,要不只能拿到value值,我想要的是具体路径啊! 没把法,只能自己强上了!本来3个函数就能搞定了,根据要找的value值得到该值的具体路径,但是后面又想到有时是要根据key值得到对应的value,而且在镶嵌字典里,一样名字的key应该不少啊,最好还能返回要找的key的具体路径跟它对应的值,具体看代码 之前2个版本都是先找到目标,然后再一步步...
递归处理多层嵌套列表
建立一个多层列表(即列表中存储列表)并输出列表项 如下图: 可以看出输出的只是输出了外列表 当然也可以多次循环输出每一个子项:如下图所示 注:isinstance(object, classinfo)为python的内置函数,用来判断对象的类型 这是三层循环,如果是很多次循环再用for循环输出就太麻烦了, 对于这种情况需要建立一个函数,递归循环输出子项 如下图所示:
python 嵌套list的一些小结
1.遍历嵌套list将嵌套的list遍历并输出是很常见的需求。以下通过两种方法达到目的def nested_list(list_raw,result): for item in list_raw: if isinstance(item, list): nested_list(item,result) else:
Python 字典 列表 嵌套 复杂排序大全
一: 字典排序 二: 列表排序 三: 字典列表相互嵌套排序
<PY>转换类型:嵌套列表的遍历
万能的字符串 嵌套列表的遍历 a= [1, 2, 3, 4, [5, 6], [7, 8],[9,10, [11,12]]] print(13 in [ int(i) for i in str(a).replace("[","").replace("]","").split(',')]) b= [1, 2, 3, 4, [5, 6], [7, 8],[9,10, [11,12]]
Python打印多层嵌套列表
列表中嵌套列表 递归调用,将列表几嵌套中的列表元素append到一个新列表中 [ 1, 2, [ 3, 4, [ 5, 6, 7 ], [ 8, [ ...
python3-学习笔记--列表(list),元组(tuple),字典(dict),集合(set)
一,list   (一),声明方式 list1 = ['Google', 'Runoob', 1997, 2000]; list2 = [1, 2, 3, 4, 5 ]; list3 = [&quot;a&quot;, &quot;b&quot;, &quot;c&quot;, &quot;d&quot;]; (二),访问列表 与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。 两者不一样的是,获取的类型不一样,截取的是list类型,而下标获取的是...
将两个嵌套for循环写成一个列表生成式
将两个嵌套for循环写成一个列表生成式 如,有一个嵌套列表,a=[[1,2],[3,4],[5,6]],要提取列表里的每一个元素 用for循环处理: for i in a: for j in i: print(j) 用列表生成式: b=[j for i in a for j in i]#注意两个for的顺序 print(b) >>> b [1
解锁多层嵌套列表,元组
解锁多层嵌套链表。def xunhuan(i): for x in i: if type(x) == type([]) or type(x)==type((1,)): xunhuan(x) #如果判断是列表或者元组,递归调用 elif type(x) == type(''): for j in x:
如何将一个列表嵌套的结构中的每个最底层元素取出,并形成一个新的列表
有如下的嵌套列表 x0 = [('tom','jerry','spike'),('micky','minnie','donald')] 现在要将其中的最底层元素取出,形成一个新的列表: ['tom', 'jerry', 'spike', 'micky', 'minnie', 'donald'] 常规方法用双重for循环来取出,并逐个添加的新的列表中: character0
python - 列表分组技巧 #写出一段 Python 代码,实现分组一个 list 里面的元素,如 [1,2,3,...100]变成 [[1,2,3],[4,5,6]....]
代码如下:#coding=utf-8 #python - 列表分组技巧 #请写出一段 Python 代码实现分组一个 list 里面的元素,如 [1,2,3,...100]变成 [[1,2,3],[4,5,6]....]a = [x for x in range(1,101)]b = [a[i:i+3] for i in range(0, len(a),3)]print(b)运行结果:[[1, 2,
python 列表展开,适用于N层嵌套的列表
我的简书地址:http://www.jianshu.com/p/8215f455e4e5 网络上公布了很多列表嵌套展开的语法,这里就不一一列举了,方法大致包含 lambda语句, itertools. 这些工具存在问题,就是不能对N(N&gt;3)的列表进行展开。曾经最喜欢用的神器 from compiler.ast import flatten 可以解决这个问题,但是现在python3 不支持这个包了
Python嵌套列表转一维(压平嵌套列表)
python压缩多维列表
Python自学之路第八步——遍历字典&嵌套
今天结束字典,写的有点多,对照效果图以及注释也很好理解…… """遍历字典""" username={'full_name':'LiHeng', 'surname':'Li', 'name':'Heng' } #遍历所有的键-值对 for k,v in username.items(): #方法items()返回一个键-值对列表
Python 快速展开嵌套多层的list
def flatten(input_list): output_list = [] while True: if input_list == []: break for index, i in enumerate(input_list): if type(i)== list: ...
python生成一个字典的嵌套
初学python,在网上看到了很多关于如何解析多层嵌套的,但是如何生成我搞了好久,主要还是不熟python的一些函数的用法,基础知识还是要看一看的。 目的:生成{1: {‘errors’: {0: ‘d:\helloworld’, 1: ‘d:\dict’}, ‘os’: ‘windows’, ‘vob’: 2}}这样的多层嵌套的数据。 d1={} d1.setdefault(1,{})[er
python 中字典嵌套列表
>>> dict={} >>> dict['list']=[] >>> dict['list'].append([1,2,3,4]) >>> dict['list'].append([5,6,7]) >>> dict['list'].append([7,8,9,0,10])输出字典:>>> dict {'list': [[1, 2, 3, 4], [5, 6, 7], [7, 8, 9, 0, 10
python用列表生成式写嵌套循环
将两个嵌套for循环写成一个列表生成式 如,有一个嵌套列表,a=[[1,2],[3,4],[5,6]],要提取列表里的每一个元素 用for循环处理: for i in a: for j in i: print(j) 用列表生成式: b=[j for i in a for j in i]#注意两个for的顺序 print(b) b=[1, 2, 3,...
【算法】嵌套列表展开
&quot;&quot;&quot; 问题1:对于列表形如 list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] 转化成列表 list_2 = [1, 2, 3, 4, 5, 6, 7, 8, 9] 的问题。 &quot;&quot;&quot; list_1 = [[1, 2], [3, 4, 5], [6, 7], [8], [9]] #方法一 list_2 = [] for sub_list in lis...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 python有什么用 有python的培训