0 0

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个答案 按时间排序 按投票排序

0 0

lz,people这个句柄是一个数组对象,有自己的方法
people = lookup(data, label, name) 为赋值语句

people.append(full_name) 调用people自身的方法

其实你运行一遍,调试一下就好了呀

2012年6月21日 10:22
0 0

引用
代码中既有
people = lookup(data, label, name)

又有
people.append(full_name)

不是啊 people也是个字典啊 是个数组啊

2012年6月20日 14:22
0 0

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
0 0

好吧,我不是高手,但是也能解释解释...

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编程语言的世界里,"Python入门案例代码"是一份非常适合初学者的资源,它包含了大量帮助理解基础概念和语法的实例。这份压缩包可能是博主为了教学目的精心编排的一系列教程,旨在引导新手逐步掌握Python的...

    python入门级代码

    pycharm平台Python入门级代码,从hello world开始,涉及Python部分基本语法

    Python入门代码-零基础学Python

    **Python入门代码详解** 在学习Python编程语言时,掌握基础语法是至关重要的第一步。Python以其简洁明了的语法和强大的功能吸引了众多初学者。在这个"Python入门代码"压缩包中,我们将通过anaconda的jupyter ...

    零基础Python入门课件和代码

    零基础Python入门课件和代码零基础Python入门课件和代码零基础Python入门课件和代码零基础Python入门课件和代码零基础Python入门课件和代码

    Python正则实例入门:《Python re(gex)?》随书代码

    【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入门代码_trieduba

    "千行代码入门python.rar"是一个压缩包文件,内含了一个简单的Python学习教程,通过大约一千行代码,旨在帮助初学者快速掌握Python的基础知识。 在Python的世界里,"千行代码"的概念意味着你可以通过相对较少的代码...

    python自学入门级代码

    "python自学入门级代码"这个标题暗示了我们即将探讨的内容是针对那些想要学习Python编程的新手,提供了简单易懂的代码示例,并且包含详细的注释,以帮助理解每一步的操作。 在Python的学习过程中,掌握基本语法是至...

    Python资源:python入门代码-入门代码

    本资源“python入门代码-入门代码”提供了学习Python编程的起点,旨在帮助新手快速掌握编程基础。 1. **Python的基本语法** Python的语法相对简单,易于理解。例如,它使用缩进来表示代码块,而不是其他语言中的花...

    入门十大Python机器学习算法(附代码).zip_6SY_python_python入门代码_python算法_机器学习

    介绍机器学术十大算法,并且附python实现代码

    网易云课堂嵩天Python入门代码

    【标题】"网易云课堂嵩天Python入门代码"是一份专为初学者设计的Python编程学习资源,由知名教育平台网易云课堂与讲师嵩天合作提供。这份代码库包含了嵩天在课程中讲解的各个Python基础概念和实战技巧的实例,旨在...

    Python编程入门经典源代码

    "Python编程入门经典源代码"是为初学者设计的一套教程资源,它包含了一系列与Python编程相关的源代码实例,按照教程章节进行详细分类,旨在帮助新手逐步掌握Python的基础知识并提升实践能力。 在Python编程入门过程...

    小学生python入门-极度舒适的全套Python入门教程,小学生看了也能学会.pdf

    【Python入门基础知识】 Python是一种广泛使用的编程语言,尤其适合初学者和小学生学习。它以其简洁易懂的语法和丰富的库支持而备受青睐。在“小学生python入门-极度舒适的全套Python入门教程”中,主要介绍了以下...

    Python编程从入门到实践书本源代码文件.rar

    通过深入研究"Python编程从入门到实践"的源代码文件,读者不仅可以巩固Python基础知识,还能逐步提升解决实际问题的能力,为今后的编程生涯奠定坚实基础。在学习过程中,读者应结合书中的讲解,动手运行代码,调试...

    零基础Python入门--课件代码下载1_python入门_python_billhhr_

    【Python入门】 Python是一种高级编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱。作为零基础的初学者,了解Python的基础至关重要。在"Python入门"阶段,你将学习到以下关键知识点: 1. **环境搭建**:...

    head first python 入门代码教程

    在Python入门阶段,了解基本语法是至关重要的。Python以其简洁明了的语法著称,如缩进代替大括号表示代码块,使用print()函数进行输出,以及变量的动态类型等。在《Head First Python》中,你会学到如何声明和使用...

    python入门教程(非常详细),从零基础入门到精通,看完这一篇就够了.pdf

    * Python 的两层意思 * Windows 安装 Python 解释器 * Linux 安装 Python 解释器 * pip 软件包管理工具介绍及基本使用 * IDE 集成开发环境介绍 * IDE 工具安装 * IDE 集成开发环境的基本使用 第五章:Python 入门 ...

    PYthon入门代码_python_

    标题中的“PYthon入门代码_python_”表明这是一个关于Python编程基础的教程,可能是通过一系列的代码示例来教授基本概念和语法。描述提到该资源来自“github”,这意味着我们可以期待一个开源、实时更新的学习资料,...

    Python基础教程,Python入门教程(非常详细).pdf

    Python以其简洁易学的特点闻名,对于初学者而言,它是入门编程的理想选择。相比Java等语言,Python的代码更简洁,例如,同样的功能,Java可能需要100行代码,而Python可能只需20行。Python的易学性在于它无需关注...

Global site tag (gtag.js) - Google Analytics