python - 如何在 Python 中写入文件字典列表
问题描述
我有以下字典元组:
myListOfDict = {
'READ_NAME': 'NB501050:52:HHMJJBGXY:4:13609:11402:8330', 'CLASS_ID': 3, 'SEQ_ID': 0, 'READ_LEN': 136, 'QVALUES': 'KEOLFC.I?EA;CHEJ?/0CGDBI1GF4D+>-CEB8/J/EFF=HK/0GGGHCFG;GFBH0JG8GG..DGH/BKD?,BHFCFHKF=BH-HFG3BHHGGHFHIBGHFHKDIIJCFGHABGIEHCFFHFHEHEEGQOOO', 'SEQUENCE': 'CACAGGTCTATCACCCTATTAACCCCTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATT', 'MAPPING_POS': 3, 'DELTA': 0, 'ECIGAR_STRING': '24=C111=', 'ECIGAR_LEN': 8, 'REVERSE_COMP': 1, 'MAPPING_SCORE': 70.0
},
{
'READ_NAME': 'NB501050:47:HHMJVBGXY:2:11311:23488:9633', 'CLASS_ID': 3, 'SEQ_ID': 0, 'READ_LEN': 136, 'QVALUES': 'K@KJ<E12I1H0I@BGGHFIJFHFIKFCIKFGGGGH=EGG@FBHFJGGGGG0HGHDEKDBIBHFCFIKFGFHBHFHDBIJGGHFEIBGHFIKDIIJCFGHFBIKFHCFF5GHFIGDGGEFEHJFI6JEJEEHRKMN', 'SEQUENCE': 'CTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTAT', 'MAPPING_POS': 18, 'DELTA': 0, 'ECIGAR_STRING': '131=C4=', 'ECIGAR_LEN': 7, 'REVERSE_COMP': 1, 'MAPPING_SCORE': 70.0
},
{...}
对于元组的每个元素(即字典),我只需要将与每个键对应的值打印到文件中。在我正在寻找的内容下方:
NB501050:52:HHMJJBGXY:4:13609:11402:8330 3 0 136 KEOLFC.I?EA;CHEJ?/0CGDBI1GF4D+>-CEB8/J/EFF=HK/0GGGHCFG;GFBH0JG8GG..DGH/BKD?,BHFCFHKF=BH HFG3BHHGGHFHIBGHFHKDIIJCFGHABGIEHCFFHFHEHEEGQOOO ..
NB501050:47:HHMJVBGXY:2:11311:23488:9633 3 0 136 K@KJ<E12I1H0I@BGGHFIJFHFIKFCIKFGGGGH=EGG@FBHFJGGGGG0HGHDEKDBIBHFCFIKFGFHBHFHDBIJGGHFEIBGHFIKDIIJCFGHFBIKFHCFF5GHFIGDGGEFEHJFI6JEJEEHRKMN ...
我实现了以下代码:
with open("filename_t", "w") as f:
for val in myListOfDict:
for val1 in val.items():
for val2 in val1:
f.write(str(val2) + " ")
f.write("\n")
但我没有得到我想要的..
READ_NAME NB501050:52:HHMJJBGXY:4:13609:11402:8330 CLASS_ID 3 SEQ_ID 0 READ_LEN 136 QVALUES KEOLFC.I?EA;CHEJ?/0CGDBI1GF4D+>-CEB8/J/EFF=HK/0GGGHCFG;GFBH0JG8GG..DGH/BKD?,BHFCFHKF=BH-HFG3BHHGGHFHIBGHFHKDIIJCFGHABGIEHCFFHFHEHEEGQOOO SEQUENCE CACAGGTCTATCACCCTATTAACCCCTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATT MAPPING_POS 3 DELTA 0 ECIGAR_STRING 24=C111= ECIGAR_LEN 8 REVERSE_COMP 1 MAPPING_SCORE 70.0
READ_NAME NB501050:47:HHMJVBGXY:2:11311:23488:9633 CLASS_ID 3 SEQ_ID 0 READ_LEN 136 QVALUES K@KJ<E12I1H0I@BGGHFIJFHFIKFCIKFGGGGH=EGG@FBHFJGGGGG0HGHDEKDBIBHFCFIKFGFHBHFHDBIJGGHFEIBGHFIKDIIJCFGHFBIKFHCFF5GHFIGDGGEFEHJFI6JEJEEHRKMN SEQUENCE CTATTAACCACTCACGGGAGCTCTCCATGCATTTGGTATTTTCGTCTGGGGGGTGTGCACGCGATAGCATTGCGAGACGCTGGAGCCGGAGCACCCTATGTCGCAGTATCTGTCTTTGATTCCTGCCTCATCCTAT MAPPING_POS 18 DELTA 0 ECIGAR_STRING 131=C4= ECIGAR_LEN 7 REVERSE_COMP 1 MAPPING_SCORE 70.0
如何避免打印密钥?
解决方案
您正在打印键和值,因为您正在使用dict.items()
返回键值元组的函数。只需将您的代码更改为:
with open("filename_t", "w") as f:
for val in myListOfDict:
for val1 in val.values():
f.write(str(val1) + " ")
f.write("\n")
请注意,字典并不能保证您的键/值/项目顺序。
推荐阅读
- java - 如何使用 SuiteTalk 检索 NetSuite 中自定义列表项的翻译?
- tensorflow-lite - 我可以在 TFLite 中检测到的对象数量是否有限制?
- c# - C# 连接到隐藏的 WiFi - UWP
- vb.net - 如何通过 vb.net 将数据发送到特定站点
- powershell - Powershell 总和时间值
- javascript - 告诉数据表使用自定义按钮进行文件导出
- javascript - 扩展json关系JS的递归函数
- api - 类似 ACID 的微服务模式之间的通信
- javascript - 从 html 加载的主 js 和 js 脚本之间的状态访问
- java - jOOQ 动态 WITH 子句