注册恒达娱乐账号 登陆恒达娱乐平台 招商QQ:2016585858

恒达娱乐

Python学习笔记(2)——词典(dictionary)的用法

互联网 0 评

到目前为止,我只学过C语言和C++,词典(dictionary)这个数据类型是我从来没有见过的一种数据类型。不同于其他的数据类型,比如说列表(list)或集合(set),词典中的一个元素带有两个值:关键字(key)和关键词所对应的值(value)

词典的基本使用方式

我们可以按照以下方式来初始化一个词典:

info = { ‘name’: ‘Chen’, ‘age’: 19}

这样如果print(info[‘name’])得到的就是Chen,输出info[‘age’]得到的就是19。

也可以使用get()函数来进行输出,比方说:

print(info.get(‘name’))

如果要修改词典,可以直接修改关键字所对应的值,只需要表明我们要修改哪个关键字对应的值即可,比方说:

info[‘name’] = ‘Wang’

就是将name所对应的值修改成了Wang

要增加一组元素,只需要表明我们需要增加的关键字以及它所对应的数值即可,比方说:

info[‘gender’]= ‘Male’

就是新增一个gender关键字,然后所对应的值是Male

删除一组元素,需要使用del,只需要表明我们要删除的元素的关键字即可,比方说:

del info[‘gender’]

就可以删除gender元素及其所对应的值。

当然,如果是del info,则是将整个名为info的词典全部删除并且释放。

而如果是使用clear()删除,则只是将info词典的所有元素删除,但是info这个词典本身还是存在的。这个时候如果输出info并不会报错,而是得到一个{}的空词典。

Key与Value的不同

在python中,value可以是任何一种数据类型,但是关键字(key)只能是不可变的数据类型(原文是“immutable data types”,不知道这样翻译是否正确?)。总的来说key的数据类型大概只能是以下几种:strings, numbers 和 tuples。

并且,如果key同时出现两次的话,比如说:{‘name’= ‘Chen’, ‘name’= ‘Wang’},并不会报错,但是这个等价于{‘name’= ‘Wang’},也就是说一个关键词只能存在一次,并且是最后声明的那个。

value当然就比较随意了,出现几次都没关系。这个很好理解。

批量输出词典中的元素

Python中有一个很好用的东西,叫做for in语句。词典的批量输出是以key为媒介的,比方说下面这个语句:

info = {‘name’: ‘Chen’, ‘age’: 19}

for key in info:

print(key)

这个语句实现的是一个循环(for在C语言和C++中也是一种循环)。循环的是在info词典里面的关键字,然后输出所有关键词,输出的结果如下:

name

age

如果修改成:

info = {‘name’: ‘Chen’, ‘age’: 19}

for key in info:

print(info[key])

那么输出的结果就会是:

Chen

19

for in在词典中还有许多不同的用法,比如说:

info = {‘name’: ‘Chen’, ‘age’: 19}

for key in info.items():

print(key)

输出的就是:

(‘name’, ‘Chen’)
(‘age’, 19)

上一篇

发表评论

电子邮件地址不会被公开。 必填项已用*标注