python - 如何将以下字典键转换为另一个键?
问题描述
原始键(以元组为键的dict_keys)是:
dict_keys([(0.8, 1.6, '00a1'), (0.8, 1.6, '0q00'), (0.8, 1.6, '0b0q'), (0.8, 1.6, '0cc0'), (0.8, 1.6, '0e00')])
我怎样才能把它们变成:
dict_keys(['00a1', '0q00', '0b0q', '0cc0', '0e00'])
也可以使用新键创建一个新字典。但我不知道该怎么做。
解决方案
您可以使用字典理解来创建带有新键的新字典:
old_dict = {
(0.8, 1.6, '00a1'):'some_value',
(0.8, 1.6, '0q00'):'some_value',
(0.8, 1.6, '0b0q'):'some_value',
(0.8, 1.6, '0cc0'):'some_value',
(0.8, 1.6, '0e00'):'some_value',
}
print('Old dictionary keys: ', end='')
print(old_dict.keys())
new_dict = {k[2]: v for k, v in old_dict.items()}
print('New dictionary keys: ', end='')
print(new_dict.keys())
印刷:
Old dictionary keys: dict_keys([(0.8, 1.6, '00a1'), (0.8, 1.6, '0q00'), (0.8, 1.6, '0b0q'), (0.8, 1.6, '0cc0'), (0.8, 1.6, '0e00')])
New dictionary keys: dict_keys(['00a1', '0q00', '0b0q', '0cc0', '0e00'])
推荐阅读
- azure-pipelines - 如何在 Azure Pipeline 中发布 GoogleTest 结果?
- javascript - innerHTML 未在 for JS 循环中更新
- php - PHP - 文件上传到根文件夹
- c - 基于如何调用循环方法来表示孩子和父母,我不确定一项任务
- excel - 我将使用什么 Excel 函数和过程来计算一列和另一列之间的时间(上午 6 点 55 分/下午 3 点 00 分)?
- c - 如何使 USB 到串行适配器更快,ReadFile 执行时间太长
- python - 计算原子质量
- emacs - 如何在 Emacs org-mode 中养成每天应该执行一定次数的习惯
- python - OpenCV 填充轮廓中的孔
- assembly - 我需要帮助在程序集中对具有 5 个不同值的数组求和