Python-嵌套列表list的全面解析

yipeiwu_com4年前Python基础

一个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):
		for j in i:
			print j
	else: print i结果

a
b
c
['inner']

这个2层嵌套也分开了了,但里面的列表没有分拆,虽然可以继续拆解得到结果,但非最佳选择

构造函数,迭代解析这个多层嵌套列表

 def printm(listin):
	for i in listin:
		if isinstance(i,list):
			printm(i)
		else: print i使用该函数直接解析嵌套列表,一次拆完

printm(m)

结果如下:

a
b
c
inner

以上这篇Python-嵌套列表list的全面解析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python用win32gui遍历窗口并设置窗口位置的方法

最近电脑打开某个软件却看不见窗口,在任务栏上看到软件明明已经运行,猜想一定是什么原因造成软件窗口位置偏离屏幕的有效坐标太远。尝试重启电脑,重装软件,都没有解决,看来是在注册表存储了位置信...

Python序列类型的打包和解包实例

打包 如给出一系列由逗号分隔的表达式,他们将被视为一个单独元组,即使没有提供封闭的圆括号 如: numbers = 1, 2, 3, 4 使numbers被赋值元组(1, 2, 3...

网易2016研发工程师编程题 奖学金(python)

本文为大家分享了网易2016研发工程师编程题,供大家参考,具体内容如下 ''' [编程题] 奖学金 时间限制:1秒 空间限制:32768K 小v今年有n门课,每门都有考试,为了拿到奖学金...

Ubuntu18.04下python版本完美切换的解决方法

Ubuntu18.04下python版本完美切换的解决方法

ubuntu18.04版本,python版本python2.7,python3.5,python3.6 因为安装一些库会安装到python3.6上,而默认使用的是python2.7,使用...

python中正则表达式 re.findall 用法

Python 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正...