python自动化(一)基础能力:7.字典和json

一、字典与JSON

(一)、字典

1.字典是以键值对形式出现的存储对象,且可存储任意类型对象.
2.字典用大括号{}表示,键和值用冒号‘:’关联,键和值用冒号‘:’关联.

示例:

salary = {'月薪':'12K','年终':'2个月'}
print(type(salary))
print(salary)

运行结果:

2.字典是无序的,不能通过下标来获取字典内的值

salary1 = {'月薪':'12K','年终':'2个月'}
salary2 = {'年终':'2个月','月薪':'12K'}
print(salary1 == salary2)#两个字典内的键值对顺序不同,但是等价的。
print(salary2['年终'])#通过键获取值

运行结果:

3. 字典的key值唯一

dict3 = {'姓名':'张飞','体重':250,'姓名':'关羽'}
#一个字典中有两个同样的键‘姓名’
print(dict3)
>>>{'姓名': '关羽', '体重': 250}
#可以看到,后边的键值对会覆盖前边的

运行截图:

 4.访问、新增、删除、修改、遍历

salary1 = {'月薪':'12K','年终':'2个月'}

1.新增
salary1['学校'] = '全日制二本'
>>>{'月薪': '12k', '年终': '2个月', '学校': '全日制二本'}


2.删除
del salary1['月薪']#del 删除
>>>{'年终': '2个月'}

3.修改
salary1['月薪'] = '20k'
>>> {'月薪':'20K','年终':'2个月'}

4.遍历
salary1 = {'月薪':'12K','年终':'2个月'}
for key,value in salary1.items():#items(),用来遍历键值对:
    print(key, value)
>>>月薪 12K
   年终 2个月

for key in salary1.keys():#keys(),用来遍历键
    print(key)
>>>月薪 
   年终 

for value in salary1.values():#values(),用来遍历值
    print(value)
>>>12K
   2个月

5.清空
salary1.clear() # 清空字典
>>>{}

(二)、json

JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。

json格式有两种

1.非常像字典的字符串--键值对形式

2.非常像列表的字符串--数组形式

两种形式本质上是都是字符串

用的比较多是键值对形式

json格式多用于不同模块或客户端与服务器或服务器与服务器之前的数据交换

接收方获取到json格式的数据后进行解析并使用。

示例:

1.字典转换为JSON

import json
salary1 = {'月薪':'12K','年终':'2个月'}
data = {
    '月薪':'12K',
    '年终':'2个月',
}

json_str = json.dumps(data,ensure_ascii=False) #ensure_ascii=False可以解决中文乱码的问题
print("Python 原始数据:", repr(data))
print("JSON 对象:", json_str)

2.将 JSON 对象转换为 Python 字典

str11 = '''{"姓名":"关羽", "体重":"250","身高":"195"}'''
str11_dict = json.loads(str11)#json转为字典
print(str11_dict)
>>>{'姓名': '关羽', '体重': '250', '身高': '195'}
print(type(str11_dict))
>>><class 'dict'>#已经转为字典格式

运行结果:

 

 

3.备注

字典与json格式有一个小的区别

json里面必须使用双引号,字典则单引号双引号都行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

测试龙巫师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值