В принципе я не уверен, есть ли какой-нибудь возможный способ преобразовать этот код в понимание списка. list1 и list3 являются списками списков, которые были извлечены из информации о генах. Таким образом, в основном x [2] является gene_id, а y [0] также является gene_id. y [1] - это имена генов. в основном я хочу закончить со списком 5, который представляет собой списки списков, которые я могу перебрать, чтобы записать в tsv.
list2 = []
list4 = []
list5 = []
for x in list1:
for y in list3:
if x[2] == y[0]:
list2.append(y[1])
list4.append(x[2])
list4.append(",".join(list2))
list5.append(list4)
list2 = []
list4 = []
Для списка в list1, x равен [9606, HEX1M1,9606.ENSP00000328773].
Тогда для всех y, у которых y [0] == x [2] в списке 3, например, [9606.ENSP00000395733, ZNF737-001, Ensembl_HGNC_trans_name Ensembl_Vega_transcript] и [9606.ENSP00000395733, ZNF7372, Ensembl_HGNC_trans_name Ensembl_Vega_transcript]
Затем мы хотим получить [["9606.ENSP00000395733", "ZNF737-001, ZNF737-002, HEX1M1"]] для списка 5 после этой итерации.