-
python的入门,代码,什么意思?5
>>> def init(data): #data作为存储表,初始化
data['first'] = {}
data['middle'] = {}
data['last'] = {}
>>> def store(data, full_name): #存储,将全名存储到表中
names = full_name.split() #将名字按空格(即first,middle,last)分开,返回列表,如'Ma Li He'返回['Ma', 'Li', 'He']
if len(names) == 2: names.insert(1, '')#若无中间名,则插入空来表示中间名['Mr', 'Zha']返回['Mr', '', 'Zha']
labels = 'first', 'middle', 'last' #元组
for label, name in zip(labels, names): #元组与序列间也可使用zip
people = lookup(data, label, name)
if people:
people.append(full_name)
else:
data[label][name] = [full_name] #当键不存在时,自动添加键值对,
#但如果输出不存在键对应值,则报错
>>> def lookup(data, label, name): #查找,根据label查找是name的中间人
return data[label].get(name)
11111111111111111111111111111111111111111111111
我不明白这部分代码是什么意思?
if people:
people.append(full_name)
else:
data[label][name] = [full_name]
高手解释一下!!!
问题补充:代码中既有
people = lookup(data, label, name)
又有
people.append(full_name)
如果执行的话,那么名字不就重复了吗?
到底是怎么理解啊?高手赐教!!!2012年6月19日 19:06
4个答案 按时间排序 按投票排序
-
lz,people这个句柄是一个数组对象,有自己的方法
people = lookup(data, label, name) 为赋值语句
people.append(full_name) 调用people自身的方法
其实你运行一遍,调试一下就好了呀2012年6月21日 10:22
-
引用代码中既有
people = lookup(data, label, name)
又有
people.append(full_name)
不是啊 people也是个字典啊 是个数组啊2012年6月20日 14:22
-
for label, name in zip(labels, names): #元组与序列间也可使用zip people = lookup(data, label, name) if people: people.append(full_name) else: data[label][name] = [full_name]
lable是 'first', 'middle', 'last' ,比如说 fullname 是'Ma Li He',那么name数组就是['Ma', 'Li', 'He']
然后就调用lookup 查找 data['first'].get('Ma'),如果找到了,就把这个fullname添加到 data['first']['Ma']的数组里,实际上就是把这个'Ma Li He'这个全名加到firstname是Ma的数组里,其实data是个三维的数组吧。。。
如果没找到,也就是还没有firstname是ma的人,然后data['first']['Ma']就初始化为'Ma Li He'
同样,查找data['middle'].get('Li'), data['last'].get('last')。。。2012年6月20日 09:48
-
好吧,我不是高手,但是也能解释解释...
if people: # 如果people不为空,则
people.append(full_name) # 将full_name加到people数组的最后一位
else: # 否则
data[label][name] = [full_name] # 用full_name为值,新建一个数组,放到data[label][name]里面去...data是一个字典,它的值也是一个字典.2012年6月20日 09:45
相关推荐
"python入门代码"这个标题表明这是一个适合初学者学习Python编程的资料集合,可能包含了一系列的基础教程或者示例代码。 描述中的“在清理电脑时不舍得删掉”暗示了这些代码对于个人编程习惯的形成有着重要作用,...
在Python编程语言的世界里,"Python入门案例代码"是一份非常适合初学者的资源,它包含了大量帮助理解基础概念和语法的实例。这份压缩包可能是博主为了教学目的精心编排的一系列教程,旨在引导新手逐步掌握Python的...
pycharm平台Python入门级代码,从hello world开始,涉及Python部分基本语法
**Python入门代码详解** 在学习Python编程语言时,掌握基础语法是至关重要的第一步。Python以其简洁明了的语法和强大的功能吸引了众多初学者。在这个"Python入门代码"压缩包中,我们将通过anaconda的jupyter ...
零基础Python入门课件和代码零基础Python入门课件和代码零基础Python入门课件和代码零基础Python入门课件和代码零基础Python入门课件和代码
【Python正则实例入门:《Python re(gex)?》随书代码】’py_regular_expressions - Learn Python Regular Expressions step by step from beginner to advanced levels' by Sundeep Agarwal
"千行代码入门python.rar"是一个压缩包文件,内含了一个简单的Python学习教程,通过大约一千行代码,旨在帮助初学者快速掌握Python的基础知识。 在Python的世界里,"千行代码"的概念意味着你可以通过相对较少的代码...
"python自学入门级代码"这个标题暗示了我们即将探讨的内容是针对那些想要学习Python编程的新手,提供了简单易懂的代码示例,并且包含详细的注释,以帮助理解每一步的操作。 在Python的学习过程中,掌握基本语法是至...
本资源“python入门代码-入门代码”提供了学习Python编程的起点,旨在帮助新手快速掌握编程基础。 1. **Python的基本语法** Python的语法相对简单,易于理解。例如,它使用缩进来表示代码块,而不是其他语言中的花...
介绍机器学术十大算法,并且附python实现代码
【标题】"网易云课堂嵩天Python入门代码"是一份专为初学者设计的Python编程学习资源,由知名教育平台网易云课堂与讲师嵩天合作提供。这份代码库包含了嵩天在课程中讲解的各个Python基础概念和实战技巧的实例,旨在...
"Python编程入门经典源代码"是为初学者设计的一套教程资源,它包含了一系列与Python编程相关的源代码实例,按照教程章节进行详细分类,旨在帮助新手逐步掌握Python的基础知识并提升实践能力。 在Python编程入门过程...
【Python入门基础知识】 Python是一种广泛使用的编程语言,尤其适合初学者和小学生学习。它以其简洁易懂的语法和丰富的库支持而备受青睐。在“小学生python入门-极度舒适的全套Python入门教程”中,主要介绍了以下...
通过深入研究"Python编程从入门到实践"的源代码文件,读者不仅可以巩固Python基础知识,还能逐步提升解决实际问题的能力,为今后的编程生涯奠定坚实基础。在学习过程中,读者应结合书中的讲解,动手运行代码,调试...
【Python入门】 Python是一种高级编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱。作为零基础的初学者,了解Python的基础至关重要。在"Python入门"阶段,你将学习到以下关键知识点: 1. **环境搭建**:...
在Python入门阶段,了解基本语法是至关重要的。Python以其简洁明了的语法著称,如缩进代替大括号表示代码块,使用print()函数进行输出,以及变量的动态类型等。在《Head First Python》中,你会学到如何声明和使用...
* Python 的两层意思 * Windows 安装 Python 解释器 * Linux 安装 Python 解释器 * pip 软件包管理工具介绍及基本使用 * IDE 集成开发环境介绍 * IDE 工具安装 * IDE 集成开发环境的基本使用 第五章:Python 入门 ...
标题中的“PYthon入门代码_python_”表明这是一个关于Python编程基础的教程,可能是通过一系列的代码示例来教授基本概念和语法。描述提到该资源来自“github”,这意味着我们可以期待一个开源、实时更新的学习资料,...
Python以其简洁易学的特点闻名,对于初学者而言,它是入门编程的理想选择。相比Java等语言,Python的代码更简洁,例如,同样的功能,Java可能需要100行代码,而Python可能只需20行。Python的易学性在于它无需关注...