当前位置:   article > 正文

python字典的操作_python教材 5.1

python教材 5.1

一  字典

1 字典的定义

字典是一个无序的,可修改的,元素呈键值对的形式,以逗号分割的,以大括号包围的序列;

字典是python基础数据类型当中唯一一个映射关系的数据类型;

由于字典无序,所以我们定义字典和字典生成之后的元素顺序是不同的;

dic = {key:value,key1:value,...}

2、字典的key的类型只能是不可变数据类型,value可以是可变数据类型

  1. dic = {'name':'zs',10:32,(1,2,3):(2,3,4)}
  2. print(dic)#{10: 32, 'name': 'zs', (1, 2, 3): (2, 3, 4)}
  3. dic = {'name':'zs',10:32,[1,2,3]:(2,3,4)}
  4. print(dic) #报错

3字典的增、删、改、查

(1)字典的增加

  1. dic = {'name':'zs','age':10,'height':1.75}
  2. dic.setdefault('weight',170)#setdefault {'height': 1.75, 'weight': 170, 'name': 'zs', 'age': 10}
  3. dic.setdefault('weight',180)# 如果 key在字典中就已经存在 就不会覆盖字典中的值
  4. dic['weight'] = 180 #根据key来设置值
  5. dic['weight'] = 120#如果key存在,就直接覆盖掉原有的值 {'weight': 120, 'height': 1.75, 'age': 10, 'name': 'zs'}
  6. print(dic)

(2)删除操作

  1. dic = {'name':'zs','height':1.75}
  2. dic.pop('name') 按照‘键’删除值
  3. print(dic)# {'height': 1.75, 'age': 10}
  4. dic.popitem() 随机删除一个键值对
  5. dic.clear() 清除字典中的左右键值对
  6. del dic 直接从内存中删除变量 , 效果是报错
  7. deldic['name'] 根据键值对删除

(3)修改操作

  1. dic = {'name':'zs','age':10,'weight':1.33}
  2. 根据键来修改值
  3. dic['name'] = '赵四'
  4. dic1 = {'name':'赵四''height':1.75}
  5. dic.update() 需要传递一个字典,如果key相同就直接修改对应的value,如果key不存在就直接添加键值对
  6. dic.update(dic1)

(4)查找操作

  1. dic = {'name':'zs','age':10,'weight':1.33}
  2. value = dic.get('name') 根据键获取对应的值我们可以定义一个变量接收返回值
  3. print(value)
  4. ret = dic.key 获取所有的‘键’
  5. values = dic.values() 获取所有的‘值’
  6. ret = dic.items() 返回列表套元组的形式
  7. ret = len(dic) 返回键值对个数
  8. tup = (1,2,3,)
  9. ret = dict.formkeys(tup,'aa') # {1: 'aa', 2: 'aa', 3: 'aa'}
  10. print(ret)

4.python字典的特点

因为字典是无序的,所以没有索引值

因为字典没有索引值,所以字典以键取值,(字典的键相当于列表的索引)

因为自电视以键取值,所以字典的键具有唯一性,且不可修改

因为字典的键不可修改,所以列表和字典可变类型的数据不可以给字典做键

5.字典的遍历

in   判断指定的键是否在字典中

not in   判断指定的键是否不再字典中

  1. dic = {'name':'zs','weight':129,'age':10}
  2. for key,value in dic.items():
  3. print(key,'---',value)
  4. 结果:
  5. age --- 10
  6. name --- zs
  7. weight --- 129

for.....in ......  通过for.....in ...... :的语法结构,我们可以遍历字符串、列表、元组、字典等数据结构

  1. innot in
  2. dic = {'name':'zs','weight':129,'age':10}
  3. key = dic.keys()
  4. if 'name' not in keys:
  5. dic['name'] = '赵四'
  6. else:
  7. dic['name'] = '尼古拉斯' dict_keys(['age', 'name', 'weight'])
  8. {'age': 10, 'name': '尼古拉斯', 'weight': 129}
  9. print(dic)
  10. for key in dic.key(): # 只获取key
  11. print(key)
  12. 结果: name
  13. weight
  14. age

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/516492
推荐阅读
相关标签
  

闽ICP备14008679号