文档章节

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

MrYx3en
 MrYx3en
发布于 2014/07/27 11:04
字数 308
阅读 129
收藏 1
点赞 0
评论 0
#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
博文 88
码字总数 30598
作品 0
宝鸡
系统管理员
python语法小细节及小定义(一)

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

戴千岩 ⋅ 2017/09/26 ⋅ 0

人人都能学会的python编程教程(基础篇)完整版

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

编程老司机 ⋅ 05/10 ⋅ 0

人人都能学会的python编程教程13:递归函数

话说美食街上有个煎包店,1块钱2个,2块钱3个,3块钱5个,5块钱8个。人们笑称之为斐波拉切煎包。 在数学上,斐波纳契数列被以递归的方法定义:F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n...

编程老司机 ⋅ 05/10 ⋅ 0

程序员必备,快速学习 Python 的全套14张思维导图(附高清版下载)

后台回复关键词 思维导图 可获取本文中的高清思维导图(PDF版) ML & AI∣一个有用的公众号 长按,识别二维码,加关注 获取更多精彩文章

micf435p6d221ssdld2 ⋅ 05/23 ⋅ 0

python 模板实现-引擎的编写(有时间试一下)

关于简介和模板问题请在参考文档查看 参考文档: 1.模板的编写:https://blog.csdn.net/MageeLen/article/details/68920913 一、引擎的编写 1.Templite 类 模板引擎的核心就是这个Templite类...

xiaoge2016 ⋅ 05/10 ⋅ 0

你想要的Python面试都在这里了【315+道题】

写在前面 近日恰逢学生临近毕业,课程后期大家“期待+苦逼”的时刻莫过于每天早上内容回顾和面试题问答部分【临近毕业每天课前用40-60分钟对之前内容回顾、提问和补充,专挑班里不爱说话就的...

p柯西 ⋅ 06/12 ⋅ 0

Python基础面试题80问 Python自动化开发

为什么学习Python? 2. 通过什么途径学习的Python? 3. Python和Java、PHP、C、C#、C++等其他语言的对比? 4. 简述解释型和编译型编程语言? 5. Python解释器种类以及特点? 6. 位和字节的关...

zhouzhou2018 ⋅ 05/24 ⋅ 0

王老板Python面试(10):17道python笔试面试真题

1、一行代码实现1--100之和 利用sum()函数求和 2、如何在一个函数内部修改全局变量 利用global 修改全局变量 3、列出5个python标准库 os:提供了不少与操作系统相关联的函数 sys: 通常用于命...

程序员八阿哥 ⋅ 05/22 ⋅ 0

Python函数式编程中map()、reduce()和filter()函数的用法

Python中、和三个函数均是应用于序列的内置函数,分别对序列进行遍历、递归计算以及过滤操作。这三个内置函数在实际使用过程中常常和联合使用,我们首先介绍下lambda函数。1、lambda函数 la...

损失函数 ⋅ 05/24 ⋅ 0

python2.x和python3.x的区别

Python的3.0版本,常被称为Python3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。 为了不带入过多的累赘,Python3.0在设计的时候没有考虑向下相容。许多针对早期Python版本...

leejia1989 ⋅ 05/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

eclipse酷炫大法之设置主题、皮肤

eclipse酷炫大法 目前两款不错的eclipse 1.系统设置 Window->Preferences->General->Appearance 2.Eclipse Marketplace下载【推荐】 Help->Eclipse Marketplace->搜索‘theme’进行安装 比如......

anlve ⋅ 昨天 ⋅ 0

vim编辑模式、vim命令模式、vim实践

vim编辑模式 编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入 如何进入编辑模式 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样 i ...

蛋黄Yolks ⋅ 昨天 ⋅ 0

大数据入门基础:SSH介绍

什么是ssh 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码...

董黎明 ⋅ 昨天 ⋅ 0

web3j教程

web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 汇智网最新发布的web3j教程,详细讲解...

汇智网教程 ⋅ 昨天 ⋅ 0

谷歌:安全问题机制并不如你想象中安全

腾讯科技讯 5月25日,如今的你或许已经对许多网站所使用的“安全问题机制”习以为常了,但你真的认为包括“你第一个宠物的名字是什么?”这些问题能够保障你的帐户安全吗? 根据谷歌(微博)安...

问题终结者 ⋅ 昨天 ⋅ 0

聊聊spring cloud gateway的RedisRateLimiter

序 本文主要研究下spring cloud gateway的RedisRateLimiter GatewayRedisAutoConfiguration spring-cloud-gateway-core-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/gateway/con......

go4it ⋅ 昨天 ⋅ 0

169. Majority Element - LeetCode

Question 169. Majority Element Solution 思路:构造一个map存储每个数字出现的次数,然后遍历map返回出现次数大于数组一半的数字. 还有一种思路是:对这个数组排序,次数超过n/2的元素必然在中...

yysue ⋅ 昨天 ⋅ 0

NFS

14.1 NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本 NFS数据传输基于RPC协议,RPC...

派派菠菜 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部