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

根据索引取出字典中相应键值对 字典根据值获得关键字

字典:

关键字是dict

特性一:

字典是⽆序的

特性二:

可以使⽤key-value的⽅式来存储数据,⽬前其实基于REST API的⽅式数据都是基于key-value的⽅式来存储数据的,⽐如基于JSON的格式的字符串的数据

字典的常用操作:

1.定义一个字典有两种方式:

data=dict()
data={}

2.查看字典的使用方法 使用关键字dir

字典的中的使用方法:

1.获取所有的key

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# 获取所有的key:
for key in data.keys():
    print(key)

输出结果:

name
age
work

2.获取所有的value

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# 获取所有的value
for value in data.values():
    print(value)

输出结果:

lisi
20
测试开发工程师

3.对字典进行循环  使用的关键字为items() 。将返回的列表的值赋给key,value 一个一个进行输出

 items() :方法把字典中每对 key 和 value 组成一个元组,并把这些元组放在列表中返回

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# # 对字典进行循环
for key,value in data.items():
    print(key,":",value)

输出结果:

name : lisi
age : 20
work : 测试开发工程师

4.获取 key 对应的value 一般使用 print(data["key"])的方法

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# 获取key对应具体的value  一般使用 print(data["key"])
print(data["name"])
print(data["work"])

输出结果:

lisi
测试开发工程师

5。 删除  po()

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# pop(删除的元素)  删除
print(data.pop("age"))
print(data)

输出结果:

{'name': 'lisi', 'work': '测试开发工程师'}

6.清空 clear()

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# clear 清空
# print(data.clear())

输出结果:

None

7。复制 copy()

data={"name":"lisi","age":20,"work":"测试开发工程师"}
# copy 复制
data1=data.copy()
print(data1)

.输出结果:

{'name': 'lisi', 'age': 20, 'work': '测试开发工程师'}

8.合并 update()

# update 合并
data={"name":"lisi","age":20,"work":"测试开发工程师"}
data2={"sex":"女",}
data.update(data2)
print(data)

输出结果:

{'name': 'lisi', 'age': 20, 'work': '测试开发工程师', 'sex': '女'}

字典实战:

实战一:

解决步骤 :从外层到里层 一步一步取 

data={"status":0,
      "msg":"ok",
      "datas":[
  {"name":"lisi","age":10},
  {"name":"god","age":20,"work":["test",{"language":"Python语言"}]}
      ]
      }
#  需求:取出Python语言
print(data["datas"][1]["work"][1]["language"])

输出结果:

Python语言

实战二:

data={"status":0,
      "msg":"ok",
      "datas":[
  {"name":"lisi","age":10},
  {"name":"god","age":20,
   "work":["test",{"language":"Python语言","school":["北京大学",{"专业":"计算机科学与技术"}]}]
   }
      ]
      }
需求:取出计算机与科学技术
print(data["datas"][1]["work"][1]["school"][1]["专业"])

输出结果:

计算机科学与技术

实战三:

解决步骤:1.先找到列表  ["Go","Python","Java"]   2.在将列表转换成字符串

data=["language",{"语言":["Go","Python","Java"]}]
# 需求:输出结果是:Go,Python,Java
b=(data[1]["语言"])
print(",".join(b))

输出结果:

Go,Python,Java

实战四

解决步骤:1.先定义一个列表list2    2.利用for循环获取学生信息  3.将学生信息中的成绩添加到list2中   4. 对list2中的元素进行排序  5.输出list2,得到想要的结果

data1={"status":0,"datas":[
  {"name":"lisi","score":90},
  {"name":"wangmazi","score":88},
  {"name":"wangwu","score":60},
  {"name":"zhaosi","score":59},
  {"name":"zhaosi","score":29}
]}
# #需求,对学生成绩进行排序,从低到高排序
list2=[]
for item in data1["datas"]:
   list2.append(item["score"])
list2.sort()
print(list2)

输出结果:

[29, 59, 60, 88, 90]

实战五:

解决步骤:1.先定义一个列表list3   2.利用for循环获取“datas" 里面学生的信息   3.将学生的“name”添加到list3里面    4.将列表转换为字符串    5.输出我们想要的结果

data2={"status":0,"datas":[
  {"name":"lisi","score":90},
  {"name":"wangmazi","score":88},
  {"name":"wangwu","score":60},
  {"name":"zhaosi","score":59}
]}
#需求:输出lisi,wangmazi,wangwu,zhaosi
list3=[]
for item in data2["datas"]:
   list3.append(item["name"])

print(",".join(list3))

输出结果:

lisi,wangmazi,wangwu,zhaosi

 实战六

 




https://www.xamrdz.com/web/24b1938864.html

相关文章: