python教材答案字典与集合_python中的字典与集合

字典

首先字典是可变类型,和列表一样也是储存多种类型的数据。但它是无序的所以不可用下标去访问,通常我们会以「健值对」的方式去表示。

注意的是:健必须是唯一的且必须是不可变类型,所以只有字符串,数字,元组才可以作为健。而值可以为任何类型也可相同。

字典的创建方式如下:dic = {key1 : value1, key2 : value2 }

例如我们创建一个人物信息:info = {

"name": "六小登登",

"age": 18,

"height": 180,

"tag": [高, 穷, 帅]

}

访问字典

我们都知道列表的访问是利用索引访问的。字典利用健访问即可。info[name] #六小登登

info[age] #18

修改和添加

修改字典元素是利用「健」访问然后重新赋值即可,添加元素是添加新「的健」即可。简单总结就是:健存在就是修改,健不存在就是添加。

比如:

修改元素info = {age: 18}

info[age] = 20

print(info) #{age: 20}

添加元素info = {age: 18}

info[name] = 六小登登

print(info) #{age: 18, name: 六小登登}

删除字典

字典可以删除点个元素,可以清空整个字典。

删除单个元素或者删除整个字典都可以用 del 语句。

删除单个元素info = {age: 18, name: 六小登登}

del info[name]

print(info) #{age: 18}

删除整个字典info = {age: 18, name: 六小登登}

del info

print(info) #此时会打印异常,因为del后字典不存在了。

利用 clear() 方法清空字典info = {age: 18, name: 六小登登}

info.clear()

print(info)#{}

字典的 keys方法,values方法,items方法。info = {age: 18, name: 六小登登}

print(info.keys()) #[age, name]

print(info.values()) #[18, 六小登登]

print(info.items()) #[(age, 18), (name, 六小登登)]

集合

集合和字典有点相似,首先从形式上都是用 {} 表示。其次它也是无序的。但是它没有「健」。

通常集合表示如下:{ele1,ele2,...,elen}

看上去它又和列表相似,但是列表是有序的可以通过下标访问,但集合不可以而且元素不可重复。

所以集合有两个特点:不可重复

无序所以不能用下标访问

除此之外,因为字典也是{ } 大括号表示。所以空集合不可用{ }创建,它会被当作空对象。要想创建空集合需要用set()方法。

set()也可以将字符串、列表、元组等转换成集合。set1 = set(abcdabcd)

set2 = set([1,2,3,4,5])

print(set1) #{c, d, b, a}

print(set2) #{1, 2, 3, 4, 5}

由此可见我们可以利用集合去重数据是非常好用的。

访问元素

首先集合没有「健」所以无法通过这个访问,其次集合是无序的又无法通过下标访问。怎么办?所以要想访问集合的值,就必须使用循环结构,把值逐一读取出来。set1 = {java, javascript, python}

for item in set1:

print(item)

# javascript

# python

# java

添加元素

add()方法可添加集合元素set2 = set([1,2,3,4,5])

set2.add(6)

print(set2) #{1, 2, 3, 4, 5, 6}

删除元素

remove()方法用于删除元素set2 = set([1,2,3,4,5])

set2.remove(5)

print(set2) #{1, 2, 3, 4}

也可用 del 语句:set2 = set([1,2,3,4,5])

del set2

print(set2) #删除后集合不存在,会打印错误

经验分享 程序员 微信小程序 职场和发展