三. 字典以及相关使用

1. 字典的定义 dict{}

2. 字典特征:字典是无序的,key-value键值对形式,key值不重复

3. 字典的赋值:dictA = {keyA: valueA, keyB: valueB, keyC: valueC}

4. 字典的取值:dictA[keyA]  dictA.get(keyA)

5. 字典的所有键:dictA.keys()      key-value获取:dictA.items()

6. 修改字典中元素的值:dictA[keyA] = value

7. 获取字典的长度:len(dictA)

8. 字典中添加元素:dictA[key_new] = value

9. 删除字典所有元素:dictA.clear()

10. 删除整个字典:del dictA

11. 字典组合:dict(dictA, **dictB)      dictA.update(dictB)

四. 实例

1. 字典的定义,字典的键名只能是数字、字符串、元组,且不能重复

stu1 = {"name": "Mr.逗", "sex": "male", "age": 20, "hobby": "run"}
print(stu1)

结果:
{'sex': 'male', 'hobby': 'run', 'name': 'Mr.逗', 'age': 20}

2. 字典取值:dictA[keyA]  dictA.get(keyA)

stu1 = {"name": "Mr.逗", "sex": "male", "age": 20, "hobby": "run"}
print(stu1["name"])
print(stu1.get("name"))

结果:
Mr.逗
Mr.逗

3. 修改字典值:dictA[keyA] = value,keyA是已存在的key

stu1 = {"name": "Mr.逗", "sex": "male", "age": 20, "hobby": "run"}
stu1["name"] = "Mr.小小逗"
print(stu1)

结果:
{'hobby': 'run', 'age': 20, 'name': 'Mr.小小逗', 'sex': 'male'}

4. 向字典中添加键值对,dictA[key_new] = value,key_new是不存在的

stu1 = {"name": "Mr.逗", "sex": "male", "age": 20, "hobby": "run"}
stu1["study"] = "python"

结果:
{'age': 20, 'study': 'python', 'name': 'Mr.逗', 'sex': 'male', 'hobby': 'run'}

5. 获取字典的长度:len(dictA)

stu1 = {"name": "Mr.逗", "sex": "male", "age": 20, "hobby": "run"}
print(len(stu1))

结果:
4

6. 两个字典的组合:dictA.update(dictB)  dict(dictA, **dictB)

B = {"name": "xiaojian", "age": 28, "is_marry": False}
B.update({"role": "teacher", "class": "python"})
print(B)

结果:
{'class': 'python', 'is_marry': False, 'age': 28, 'role': 'teacher', 'name': 'xiaojian'}
B = {"name": "xiaojian", "age": 28, "is_marry": False}
C = {"role": "teacher", "class": "python"}
D = dict(B, **C)
print(D)

结果:
{'class': 'python', 'is_marry': False, 'age': 28, 'role': 'teacher', 'name': 'xiaojian'}

7. 删除字典中所有元素:dictA.clear(),只是清空字典

a = {"name": "Jack", "sex": "M"}
a.clear()
print(a)

结果:
{}

8. 删除整个字典:del dictA

a = {"name": "Jack", "sex": "M"}
del a
print(a)

结果:
Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    print(a)
NameError: name 'a' is not defined

最新文章

  1. android调用系统相机并获取图片
  2. lightoj.1048.Conquering Keokradong(二分 + 贪心)
  3. C++之路进阶——bzoj3524(Couriers)
  4. HBase分布式安装
  5. 一个可创建读取日志的管理类(可固定创建2M大小的日志文件)
  6. 【Python中if __name__ == &#39;__main__&#39;: 的解析】
  7. 持续集成篇 --Hudson持续集成服务器的安装配置与使用
  8. 自定义圆角透明的Dialog
  9. js面向对象关键点
  10. JDK源码之ArrayList
  11. 使用h5py操作hdf5文件
  12. 学习笔记69—金蝶财务软件安装教程(KIS12.3,win10)
  13. hdu 5919 Sequence II (可持久化线段树)
  14. mysql的安装和配置
  15. C,Java,C#数据类型对比总结
  16. UOJ 117 欧拉回路(套圈法+欧拉回路路径输出+骚操作)
  17. 小程序/js监听输入框验证金额
  18. You&#39;ve implemented -[&lt;UIApplicationDelegate&gt; application:didReceiveRemoteNotification:fetchCompletionHandler:], but you still need to add &quot;remote-notification&quot; to the list of your supported UIBackgrou
  19. win7+php5.3.10下安装memcache (转)
  20. pip 源 替换国内源

热门文章

  1. 父标签浮动(float)“塌陷”问题
  2. OpenCV3计算机视觉+python(三)
  3. iOS UIWebView键盘处理
  4. 【转】JAVA学习笔记----PL/SQL最差实践
  5. 系统架构师考试——程序计数器 PC, 指令寄存器IR、状态寄存器SR、通用寄存器GR
  6. Android:日常学习笔记(9)———探究持久化技术
  7. Hexo 使用中搭建博客过程中遇到的坑
  8. 019_Map Task数目的确定和Reduce Task数目的指定
  9. PHP连接到mysql的方法--mysqli和PDO
  10. INSPIRED启示录 读书笔记 - 第39章 打造平台产品的经验