python - 如何转换。通过关键字将样本字典转换为不同格式?
问题描述
如果我有这样的示例字典:
sample_field = {'XG102': '1/1:0,76:76:99:1|1:48306945_C_G:3353,229,0',
'XG103': '1/1:0,52:52:99:.:.:1517,156,0',
'XG104': '0/1:34,38:72:99:.:.:938,0,796'}
通过给出关键字,我想像这样转换这个示例字典:
output = {'XG102': {'1: '0,76',
'2': '76',
'3': '99',
'4': '1/1',
'5': '1|1',
'6': '48306945_C_G',
'7': '3353,229,0'},
'XG103': {'1': '0,52',
'2': '52',
'3': '99',
'4': '1/1',
'5': '.',
'6': '.',
'7': '1517,156,0'}
....
我尝试使用索引之类的键将示例字典映射到新字典,但它不起作用。有什么建议吗?
解决方案
您可能正在使用enumerate
and寻找字典理解split
:
sample_field = {
"XG102": "1/1:0,76:76:99:1|1:48306945_C_G:3353,229,0",
"XG103": "1/1:0,52:52:99:.:.:1517,156,0",
"XG104": "0/1:34,38:72:99:.:.:938,0,796",
}
out = {
key: dict(enumerate(value.split(":"), 1))
for (key, value) in sample_field.items()
}
——out
将是
{
"XG102": {
1: "1/1",
2: "0,76",
3: "76",
4: "99",
5: "1|1",
6: "48306945_C_G",
7: "3353,229,0",
},
"XG103": {
1: "1/1",
2: "0,52",
3: "52",
4: "99",
5: ".",
6: ".",
7: "1517,156,0",
},
"XG104": {
1: "0/1",
2: "34,38",
3: "72",
4: "99",
5: ".",
6: ".",
7: "938,0,796",
},
}
推荐阅读
- java - Java程序为VB应用程序生成的文件的编码问题
- python - 更新 macOS 后无法执行 mkvirtualenv
- mongoose - 在猫鼬模式中为数组中的嵌套对象设置默认值
- objective-c - 当通过 pod 添加时,为什么“Mobilisten 框架”适用于 swift 项目而不适用于 Objective-c 项目
- cuda - CUSPARSE 三对角求解器`cusparseDgtsv` 很慢
- selenium - 是否有可能等到特定课程消失?
- dart - 如何将泛型类型作为参数传递给 Flutter 中的 Future
- c# - 单击警报后如何刷新到主页
- javascript - 如何在 console.dir("string"+object) 中使用控制台
- python-3.x - 如何删除列表列表中不唯一的所有项目?