Python基础-Dict 和 Set 类型

来源:互联网 发布:网络歌曲白裙子 编辑:程序博客网 时间:2024/05/13 19:09

Python

Dict 和 Set 类型

Dict

  • Dict由来
footballStar=['Messi','Henry','Iniesta']//球星姓名score=[50,34,15]//球星进球数

需要:查找球星的进球数.用两个 List查找很不方便,所以产生 Dict

dict = {    'Messi': 50,    'Henry': 34,    'Iniesta': 15}
  • 访问 Dict

可以简单地使用 d[key] 的形式来查找对应的 value,这和 list 很像,不同之处是,list 必须使用索引返回对应的元素,而dict使用key:

print(dict['Messi'])#50print(dict['Henry'])#34print(dict['Iniesta'])#15

特点:

  • 查找速度快
  • 存储的key-value序对是没有顺序的
  • 作为 key 的元素必须不可变(基本数据类型如字符串、整数、浮点数不可变,可以作为 key,而 list 可变,不能作为 key)
##2. 存储的key-value序对是没有顺序的dict = {    'Messi': 50,    'Henry': 34,    'Iniesta': 15}print(dict)#{'Iniesta': 15, 'Henry': 34, 'Messi': 50} 不是按照顺序打印的
  • 更新Dict
>>> dict = {...     'Messi': 50,...     'Henry': 34,...     'Iniesta': 15...... }>>> dict['Paul'] = 40##key 不存在,直接添加>>> print(dict){'Iniesta': 15, 'Messi': 50, 'Henry': 34, 'Paul': 40}>>> dict['Messi']=60##key存在,直接替换值>>> print(dict){'Iniesta': 15, 'Messi': 60, 'Henry': 34, 'Paul': 40}
  • 遍历 Dict
##打印 key和 value>>> for value in dict:...     print(value)//打印 key...     print(dict[value])//打印 value...Iniesta15Messi60Henry34Paul40

Set

和 java 里面的 set 一样,其作用是保证这个集合的元素不会重复。set存储的是无序集合,所以我们没法通过索引来访问。
- 创建 Set

>>> s = set(['A', 'B', 'C'])>>> print(s){'C', 'A', 'B'}>>> s = set(['A', 'B', 'C','C'])//传入重复的元素,会去掉重复的元素,只保留一个>>> print(s){'C', 'A', 'B'}
  • 访问 Set
>>> s = set(['A', 'B', 'C'])>>> print(s){'C', 'A', 'B'}>>> 'A' in sTrue  //若元素存在 ,返回 True
  • 遍历 Set
>>> for name in s:...     print(name)...CAB
  • 更新 Set
##添加元素,用 add()方法>>> s = set([1, 2, 3])>>> print (s){1, 2, 3}>>> s.add(5)>>> print (s){1, 2, 3, 5}##删除元素,用 remove()方法>>> s.remove(1)>>> print(s){2, 3, 5}>>> s.remove(6)Traceback (most recent call last):  File "<stdin>", line 1, in <module>KeyError: 6##删除不存在的元素,会报错,进行删除前,需要判断是否存在于 set 中
0 0
原创粉丝点击