[Day_11]资料储存容器 - 字典(dict) & 集合(set)

字典(dict)

将tuple或串列转成字典

使用「函式」将tuple或串列转成字典,让我们来看以下的例子 :

#input
a = [['礼拜一','Monday'],['礼拜二','Tuesday']]
dict1 = dict(a)
print(dict1)
b = [('礼拜一','Monday'),('礼拜二','Tuesday')]
dict2 = dict(b)
print(dict2)
c = (['礼拜一','Monday'],['礼拜二','Tuesday'])
dict3 = dict(c)
print(dict3)
d = (('礼拜一','Monday'),('礼拜二','Tuesdady'))
dict4 = dict(d)
print(dict4)

#output
{'礼拜一': 'Monday', '礼拜二': 'Tuesday'}
{'礼拜一': 'Monday', '礼拜二': 'Tuesday'}
{'礼拜一': 'Monday', '礼拜二': 'Tuesday'}
{'礼拜一': 'Monday', '礼拜二': 'Tuesdady'}

使用「函式update」合并两个字典

#input
a = {'礼拜一':'Monday'}
b = {'礼拜二':'Tuesday'}
a.update(b)
print(a)
a = {'礼拜一':'Monday','礼拜二':'Tuesday'}
b = {'礼拜二':'英文是Tuesday'}
a.update(b)
print(a)

#output
{'礼拜一': 'Monday', '礼拜二': 'Tuesday'}
{'礼拜一': 'Monday', '礼拜二': '英文是Tuesday'}

使用「函式copy」复制字典

#input
a = {'礼拜一':'Monday','礼拜二':'Tuesday'}
b = a
a['礼拜二']='今天是Tuesday'
print('a= ',a)
print('b= ',b)
a = {'礼拜一':'Monday','礼拜二':'Tuesday'}
c = a.copy()
c['礼拜二']='今天是Tuesday'
print('a= ',a)
print('c= ',c)

#output
a=  {'礼拜一': 'Monday', '礼拜二': '今天是Tuesday'}
b=  {'礼拜一': 'Monday', '礼拜二': '今天是Tuesday'}
a=  {'礼拜一': 'Monday', '礼拜二': 'Tuesday'}
c=  {'礼拜一': 'Monday', '礼拜二': '今天是Tuesday'}

使用「for」读取字典每个元素

使用「for」读取字典每个元素,配合字典的「函式items」会回传「键」与「值」两个元素

#input
a = {'礼拜一':'Monday','礼拜二':'Tuesday'}
for ch,en in a.items():
    print('中文为',ch,'英文为',en)
for ch in a.keys():
    print(ch,a[ch])
for en in a.values():
    print(en)    

#output
中文为 礼拜一 英文为 Monday
中文为 礼拜二 英文为 Tuesday
礼拜一 Monday
礼拜二 Tuesday
Monday
Tuesday

集合(set)

集合(set)储存没有顺序性的资料,要找出资料是否存在,集合内元素不能重复,集合会自动删除重复的元素

新增与修改集合

使用「set()」或「{}」建立新的集合,集合会自动删除重复的元素,「set()」只能使用一个参数

#input
a = [1,2,3,4]
print(a)
a = set(('c',1,'d',5)) 
print(a)
a = set(['working','studying','reading'])
print(a)
a = set({'礼拜一':'Monday','礼拜二':'Tuesday'})
print(a)
a = set('cancer')
print(a)

#output
[1, 2, 3, 4]
{'d', 1, 5, 'c'}
{'working', 'studying', 'reading'}
{'礼拜一', '礼拜二'}
{'a', 'n', 'r', 'c', 'e'}

使用「函式add」新增集合元素,使用「函式remove」删除集合元素

#input
a = set('elephant')
print(a)
a.add('ZZ')
print(a)
a.remove('a')
print(a)

#output
{'a', 'p', 'n', 'l', 'e', 't', 'h'}
{'a', 'p', 'n', 'l', 'e', 't', 'h', 'ZZ'}
{'p', 'n', 'l', 'e', 't', 'h', 'ZZ'}

以上是资料储存容器的介绍,
明天会给大家例题做练习,
大家一起努力吧~~
/images/emoticon/emoticon25.gif


<<:  Day 10:为你的 Hexo 增加页面:标签、分类与自订页面

>>:  Day#10 Struct

Day27:危机意识

Security Threats Denial of Service (DoS) Attack: ...

Day1 参赛前言

紧张紧张,刺激刺激,从去年下半年才参加UI/UX设计班的菜逼八,今年居然就自不量力的参加传说中的铁人...

[Q&A] 01民营企业是否要遵循资安法?

最近一年内被问过的问题,在此不具名回复,以下以废宅的自问自答模式展开~~~ Q: 民营企业是否要遵循...

30天不间断的文章之旅_函式的基本介绍

哎呀!因为周末打了疫苗,不小心烧了两天醒醒睡睡的,本来说好是30天不间断的文章之旅,断了2天,大家原...

30天学会C语言: Day 13-递回体验镇魂曲

递回 在函式里面可以呼叫函式本身 下面例子中,fun() 会先将参数 x 显示到视窗上,之後判断 x...