Как я могу поместить следующее в одну строку для оператора if?
for g_id in gene_ids:
# start one liner from here onward
if g_id in actual_isoforms:
pairs = [tup for tup in actual_isoforms[g_id]]
for p in pairs:
if p == (t_id, str(num)):
iso_id = p[0]
iso_num = p[1]
total = check_exon_num[iso_id]
Я пробовал это, но там говорится, что 'tup' не определено:
if (g_id in actual_isoforms) and [p == (t_id, str(num)) for p in tup for tup in actual_isoforms[g_id]]:
Также actual_isoforms
- это словарь со списком кортежей.Поэтому «пары» - это значения списка, а p
- это каждый кортеж в этом списке.