字典

字典---->dict

字典是无序的,可变的 关联性强

键值对

键:使用不可变的数据类型(可哈希),键是唯一的

值:可以任意

  • 定义一个字典

    dic = {}#定义字典

​ 字典的增删改查

#增
dic1= {"name":"于谦","sex":"男","age":50}
dic1["hobby"] = "抽烟,喝酒,烫头" #直接添加--->dic["键"]="值"
print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50, 'hobby': '抽烟,喝酒,烫头'} dic1.setdefault("name","郭德刚") #当添加的内容字典里没有,则会添加进去 如果存在则不添加
print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50} dic1.setdefault("hobby","抽烟,喝酒,烫头")
print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50, 'hobby': '抽烟,喝酒,烫头'} #删
del dic1["name"] ---->del dic1["键"] !!!中括号
print(dic1)#{'sex': '男', 'age': 50} dic1.pop("sex")------>dic1 pop("键") !!!小括号
print(dic1) #{'name': '于谦', 'age': 50}
print(dic1.pop("sex"))#返回被删除键的值 dic1.clear() #清空字典
print(dic1)#--->{} #改
dic1["age"]=56 #直接改 dic ["键"]=值
print(dic1)--->{'name': '于谦', 'sex': '男', 'age': 56} dic1.update({"hobby":"抽烟,喝酒,烫头"}) #dic.update("字典要更新的内容")
print(dic1)#{'name': '于谦', 'sex': '男', 'age': 50, 'hobby': '抽烟,喝酒,烫头'} #查
for i in dic1:
print(i) #name sex age 返回的是字典的键 print(dic1.get("name"))#于谦 dci1.get("键") 返回字典的键对应的值,不存在返回None
print(dic1["sex"]) #男 dic1["键"] 返回字典的键对应的值,不存在会报错

字典的其他操作

#key  获取字典中所有的键
print(dic1.keys())#dict_keys(['name', 'sex', 'age'])高仿列表
print(list(dic1.keys()))#['name', 'sex', 'age'] 转换为列表
#values 获取字典中所有的值
print(dic1.values())#dict_values(['于谦', '男', 50])高仿列表
print(list(dic1.values()))#['于谦', '男', 50] 转换为列表
#items 获取字典中所有的键和值,存在高仿列表的元祖里(元祖第一个为键,第二个为值)
for k,v in dic1.items():
print(k,v)

解构

a = 10
b =20
a,b = b,a
print(a,b)#20 10 整型 字符串 列表 字典 都可以

字典嵌套

通过字典一层一层的找

最新文章

  1. 仿苹果导航菜单js问题
  2. Struts2 Action下面的Method调用方法
  3. 124. Binary Tree Maximum Path Sum
  4. linux命令补全 忘记命令只记得开头
  5. QWidget QMainWindow QDialog 三者区别
  6. hdu 1142 A Walk Through the Forest
  7. (4)Object对象的几个常用方法
  8. swust oj 983
  9. When should you use a class vs a struct in C++?
  10. 地理空间数据云--TM影像下载
  11. jquerymobile动态添的无索刷新
  12. 回文树&后缀自动机&后缀数组
  13. 详细解读DiskLruCache
  14. vps 切换内核
  15. python 创建项目
  16. 关于Cocos2d-x中增加暂停按钮的步骤
  17. 用GO写一个连接比特币JSONRPC接口的程序
  18. Fetch POST All in One
  19. 万能头文件#include<bits/stdc++.h>
  20. PHP 边执行边输出

热门文章

  1. ubuntu 16.04 上使用pybind11进行C++和Python代码相互调用 | Interfacing C++ and Python with pybind11 on ubuntu 16.04
  2. web前端面试题总结(html、css)
  3. VSCode, Django, and Anaconda开发环境集成配置[Windows]
  4. PostGIS 查看表属性(字段、类型、是否为空)
  5. php为什么要用swoole?
  6. source for "Android 28 platform" not found
  7. 构建之法组——“别吃错喽”微信小程序评价
  8. Anaconda中启动Python时的错误:UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 553
  9. requests请求库练习--GitHub登录
  10. 数据表与简单java类——多对多映射