分享

Python 练习题】将列表转化为字典等练习题

 知识情报院 2022-02-21

【Python 练习题】将列表转化为字典等练习题

在 Python 中,字典是一种key-value键值对的数据结构,类似 JSON 一样;字典中的键是唯一的。

练习 1:将下面的两个列表转换为字典

keys = ['Ten''Twenty''Thirty']
values = [102030]

预期输出:

{'Ten'10'Twenty'20'Thirty'30}

参考代码:

可以使用 Python 中的zip函数,将两个列表传入字典,分别作为字典的key键和value

keys = ['Ten''Twenty''Thirty']
values = [102030]

sampleDict = dict(zip(keys, values))
print(sampleDict)

练习 2:将下面的两个 Python 词典合并

dict1 = {'Ten'10'Twenty'20'Thirty'30}
dict2 = {'Thirty'30'Fourty'40'Fifty'50}

预期输出:

{'Ten'10'Twenty'20'Thirty'30'Fourty'40'Fifty'50}

参考代码:

Python 中的字典可以使用两个星号*,将 2 个字典再组合成 1 个字典

dict1 = {'Ten'10'Twenty'20'Thirty'30}
dict2 = {'Thirty'30'Fourty'40'Fifty'50}

dict3 = {**dict1, **dict2}
print(dict3)

也可以使用字典的update方法,将 2 个字典合并

dict1 = {'Ten'10'Twenty'20'Thirty'30}
dict2 = {'Thirty'30'Fourty'40'Fifty'50}

dict3 = dict1.copy()
dict3.update(dict2)
print(dict3)

练习 3:获取字典中的值:获取下列字典键为 'history' 的值

sampleDict = {
   "class":{
      "student":{
         "name":"Mike",
         "marks":{
            "physics":70,
            "history":80
         }
      }
   }
}

预期输出:

80

参考代码:

依次访问字典中的键即可

print(sampleDict['class']['student']['marks']['history'])

练习 4:将下面字典中部分件提取出来成为新的字典

sampleDict = {
  "name""Kelly",
  "age":25,
  "salary"8000,
  "city""New york"
  
}

要提取的键

keys = ["name""salary"]

预期输出:

{'name''Kelly''salary'8000}

参考代码:

使用字典生成式,将要提取的键依次传入提取,再生成新的字典即可

sampleDict = { 
  "name""Kelly",
  "age":25
  "salary"8000
  "city""New york" }

keys = ["name""salary"]

newDict = {k: sampleDict[k] for k in keys}
print(newDict)

练习 5:从字典中删除一组键

sampleDict = {
  "name""Kelly",
  "age":25,
  "salary"8000,
  "city""New york"
  
}
keysToRemove = ["name""salary"]

预期输出:

{'city''New york''age'25}

参考代码:

使用字典生成式,将要删除的键从原来的键中去除,再生成新的字典即可

sampleDict = {
  "name""Kelly",
  "age":25,
  "salary"8000,
  "city""New york"
}
keysToRemove = ["name""salary"]

sampleDict = {k: sampleDict[k] for k in sampleDict.keys() - keysToRemove}
print(sampleDict)

今天的练习主要用到了Python中字典的zip方法,以及字典生成器等,大家都学会了吗?

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多