文档章节

head first python_1 递归函数来处理列表

MrYx3en
 MrYx3en
发布于 2014/07/27 11:04
字数 308
阅读 129
收藏 1
#print_lol.py
#python 3默认递归深度不超过100
#创建print_lol可重用的代码块,在函数代码组内调用自身


>>>m=[1,2,[3,4,[5,6]]]

>>>def print_lol(list):
        for item in list:
            if isinstance(item,list):
                print_lol(item);
            else:
                print(item)
            
>>>print_lol(m)
1
2
3
4
5
6

标识符是指示数据对象的名字。标识符没有“类型”,不过标识符所指示的数据对象有类型。

列表(“打了激素的数组”)是一个数据集合,数据项之间用逗号分隔,整个列表使用中括号“[ ]”包围。

列表可以存放任意数据,而且数据还是混合类型,列表之中还可以嵌套其他列表。

for循环允许迭代处理一个列表:

>>> for item in list:
        print(item)

使用 def 来定义一个制定函数

isinstance( ) 会检查一个标识符是否指示某个指定类型的数据对象。例如: isinstance(item,list)    检查 item 是不是 list(列表)



让嵌套列表支持缩进

>>> def print_lol(the_list,level=0):
	for item in the_list:
		if isinstance(item,list):
			print_lol(item,level+1)
		else:
			for tab_stop in range(level):
				print('\t',end='')
			print(item)

			
>>> print_lol(m)
1
2
    3
    4
        5
        6













© 著作权归作者所有

共有 人打赏支持
MrYx3en
粉丝 9
博文 132
码字总数 30598
作品 0
宝鸡
系统管理员
Python基础班每日整理(四)

02Python基础day06 字符串的定义 字符串就是一串字符,用一对儿单引号或者双引号括起来 字符串切片 切片就是使用索引值,从一个大的字符串中切出小的字符串,适用于字符串、元组、列表。基本...

我是小谷粒
07/02
0
0
python语法小细节及小定义(一)

首先,Python是强类型语言,动态类型语言。 那么什么是强类型语言?就是数据类型非常固定的语言,例如说python中的str类型数据和int类型数据不能互相作用。而c和js就是弱类型语言。 动态类型...

戴千岩
2017/09/26
0
0
人人都能学会的python编程教程(基础篇)完整版

人人都能学会的python编程教程1:第一行代码 人人都能学会的python编程教程2:数据类型和变量 人人都能学会的python编程教程3:字符串和编码 人人都能学会的python编程教程4:关系运算符与循...

编程老司机
05/10
0
0
10分钟快速入门Python函数式编程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dQCFKyQDXYm3F8rB0/article/details/82117264 作者 | Brandon Skerritt 译者 | 王天宇、琥珀 编辑 | 琥珀 出品...

AI科技大本营
08/27
0
0
如何用十分钟学会函数式 Python?

函数式编程到底是什么?本文将详解其概念,同时分享怎样在 Python 中使用函数式编程。主要内容包括列表解析式和其他形式的解析式。 函数式模型 在命令式模型中,执行程序的方式是给计算机一系...

CSDN资讯
09/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

IDEA中Maven打包时如何跳过测试

方法1:直接使用IDEA提供的方式 Maven命令栏的工具栏有下图中的图标,上面就写着 Skip Tests 按下图标后,如下图,test就不可用了 直接使用package命令即可。 方法2:自己编辑maven命令 进入...

karma123
30分钟前
3
0
Device eth0 does not seem to be present,delaying initialization.

场景:在进行linux 主机克隆的时候,网卡初始化一般都会有问题,最常见的“Device eth0 does not seem to be present,delaying initialization.”,从字面意思 说eth0没有固化,延迟启动。由...

hnairdb
30分钟前
6
0
国内首个区块链试验区在海南成立

据新华社报道,10月8日,海南自贸区(港)区块链试验区正式在海南生态软件园授牌设立,这也是目前为止国内第一个区块链试验区。 该试验区位于海南生态软件园,与试验区同一天成立还有2家研究...

linuxCool
42分钟前
3
0
Java日期和时间获取问题

获取年月日时分秒 Calendar cal = Calendar.getInstance();//获取年int year = cal.get(Calendar.YEAR);//获取月,范围是0-11,最后使用需+1int month = cal.get(Cal...

lanyu96
今天
14
0
Ceph学习笔记2-在Kolla-Ansible中使用Ceph后端存储

环境说明 使用Kolla-Ansible请参考《使用Kolla-Ansible在CentOS 7单节点上部署OpenStack Pike》; 部署Ceph服务请参考《Ceph学习笔记1-Mimic版本多节点部署》。 配置Ceph 以osdev用户登录: ...

LastRitter
今天
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部