将列表中的每四个项目保存到 python 中字典中的一个键

Save every fourth item in a list to a key in dictionary in python

我需要将列表的每四项保存为 python 中的键,然后每四项从 5 开始作为值,并从每四项 6 开始作为值(该值将是一个列表)

我有一个如下所示的文本文件: GeneID NumC NuML NumP 合奏001 15 5 30 合奏 002 60 0 10 合奏003 25 5 41 合奏004 20 7 0 合奏005 40 22 67 合奏006 81 77 9 合奏007 2 88 2 合奏 008 8 62 90

我想制作一个字典,其中“ENSEMBL”值是键,前两个数字是与该键关联的值

我已经为字典的第一个值编写了代码:

    dict_lung = {
        file_name[4] : (file_name[5], file_name[6])
    }

打印时,这将是一个字典,键为 ENSEMBL001,值为 (15,5)

我想要做的是让字典遍历整个文本文件并保存这些值。例如,字典中保存的下一个键和值将是

file_name[8] : (file_name[9], file_name[10])

我尝试制作一个 for 循环,但一直出错,如有任何帮助,我们将不胜感激

所以基本上这是一个 hard-coded 问题。它基于您使用的逻辑:

但是你可以使用下面的循环,其中 MAX 将是允许索引的最大数量(不要忘记你需要小心超过列表):

for i in range(4, MAX, 4):
    dict_lung = { file_name[i] : (file_name[i+1], file_name[i+2]) }

来自评论循环:

i=4 j=5 k=6 
for i,j,k in list: 
    dict_lung = { file_name[i] : (file_name[j], file_name[k]) } 
    i+4 j+4 k+4

我不确定 list 是什么,但它不是包含 3 的元组的列表。请阅读 python https://www.geeksforgeeks.org/packing-and-unpacking-arguments-in-python/

中的解包