当前位置: 首页 > article >正文

python学习8:dict字典的定义,操作和方法,跟json有什么区别?

# 字典 - json
# 概念:键(key),值(value)映射关系的无序数据组合,key不能重复
# {
#     'name':'xxx',
#     'age':22,
#     'city':'广州'
# }

①字典:字典是一种数据结构,是python中的一种数据类型;它是一种可变类型,可以存储任意类型的数值,以 key:value 的形式存储数据,但是 key 可以是任意可hash的对象 ,在一个字典中不允许出现两个相同的key值,如果出现,后面一个key值会覆盖前面的key值

②json:Json是一种打包的数据格式,本质上是字符串,也是按照 key:value 来存储数据,key 只能时字符串,且可以有序、重复;必须使用双引号作为key或者值的边界符,不能使用单引号,使用单引号或者不使用引号会使解析错误。可以被解析为字典或者其他形式

# 1)定义------------------------------------------------------------
dict1 = {} # 空字典
dict2 =  {
     'name':'xxx',
     'name':'xxx11',
     'age':22,
     'city':'广州'
 } # key值不能重复
print(dict1) # {}
print(dict2) # {'name': 'xxx11', 'age': 22, 'city': '广州'} 去重

# 2).查询------------------------------------------------------------
# 字典名[key]
info = {'name': 'xxx', 'age': 22, 'city': '广州'}
print(info['name'],'info[name]') # xxx

# 3)修改数据------------------------------------------------------------
info['age'] = 55
print(info) # {'name': 'xxx', 'age': 55, 'city': '广州'}

# 4)增加数据------------------------------------------------------------
# 字典名[不存在的key] = value
info['phone'] = '111111111111'
print(info) # {'name': 'xxx', 'age': 55, 'city': '广州', 'phone': '111111111111'}

# 5)删除数据------------------------------------------------------------
# a)pop()# 不能为空!
info.pop('phone')
print(info,'删除pop') # {'name': 'xxx', 'age': 55, 'city': '广州'}
# b)clear()
info.clear()
print(info)# {}
# c)popitem():删除最后一对键值对
info = {'name': 'xxx', 'age': 55, 'city': '广州', 'phone': '111111111111'}
info.popitem()
print(info) # {'name': 'xxx', 'age': 55, 'city': '广州'}

# 6)常用方法------------------------------------------------------------
# a) 返回所有的字典数据元组
print(info.items()) # dict_items([('name', 'xxx'), ('age', 55), ('city', '广州')])
# b)返回所有key
print(info.keys()) # dict_keys(['name', 'age', 'city'])
# c)返回所有的value
print(info.values()) # dict_values(['xxx', 55, '广州'])

转化参考:字典和Json的区别_json和字典的区别-CSDN博客


http://www.kler.cn/news/290492.html

相关文章:

  • 通过查找真实IP bypass WAF
  • 容器化你的应用:使用 Docker 入门指南
  • window 10使用wsl装docker踩坑
  • CCNA课笔记
  • 【NO.17】LeetCode经典150题-13. 罗马数字转整数
  • 装机必看!内存条应该怎么插?各种内存条插法详解
  • Seataf分布式事务的使用
  • 坐牢第三十四天(c++)
  • WordPress自适应美图网站整站打包源码
  • Docker镜像中的源替换为国内源
  • C/C++:函数指针
  • SpringBoot3集成Spring Authorization Server实现SSO单点登录
  • uniapp小程序实现横屏手写签名
  • 宠物智能家居监测器的融合
  • LeetCode 606.根据二叉树创建字符串
  • 开源vscode AI插件
  • 什么是基于云的 SIEM
  • MuseTalk模型构建指南
  • css改变鼠标样式
  • 论文速读|BiGym:一款基于演示的移动双手操作机器人基准
  • IO进程练习:请在linux 利用c语言编程实现两个线程按照顺序依次输出”ABABABAB......“
  • pdf转cad软件,5款快速上手转换软件分享
  • vue el-tree主键id重复 添加自增id 以及原相同节点同步勾选 同步操作
  • 在Ubuntu上使用apt工具安装RabbitMQ
  • 单链表的问题(2)
  • NCBI-get-GCFIDs_fast.py
  • 基于贝叶斯优化CNN-LSTM网络的数据分类识别算法matlab仿真
  • 戴尔科技领涨市场,AI服务器需求成关键驱动力
  • Error when attempting to add data source to Azure OpenAI api
  • uniapp css样式盒子上面的箭头样式