С помощью итераций и понятий я создал словарь python, в котором хранятся ключи, связанные со значениями (статистика, связанная с определенными функциями). Ключи относятся к уникальному идентификатору (в моем случае, к генам). Я заселена значения списком кортежей каждый из которых указывает на StartPoint и длину конструктивного элемента (в данном случае, ORF или другими словами потенциального белка кодирования последовательности) гена ID. Любой данный ген может иметь много таких признаков. Общий вид, как в соответствии:Прохождение через словарь кортежей
{key1:[(startpoint1,length1)], key2[(startpoint1,length1)(startpoint2,length2)...], key3[]}
Как показано ниже (в словаре образца), некоторые клавиши могут иметь только одну функцию (только один кортеж, пара), в то время как другие могут иметь столько, сколько 100 или больше. Для простоты я показал seq1 с 3 парами. Также может быть ключи без каких-либо признаков, например, seq3 и 4.
{'seq2': [(1,6)], 'seq1': [(1, 12), (16, 9), (32,9)], 'seq3': [], 'seq4': []}
Я хочу перебирать этот словарь, чтобы получить «начальный», когда «длина» максимальна. В моем примере ответ я получаю
кузницы кадров 1 (в Seq1), потому что он имеет самое большое значение длины (12) среди всех записей.
Мне сложно проходить через несколько кортежей.
Что вы нашли в итерации по нескольким кортежам? Вы сталкиваетесь с какой-либо проблемой при любых попытках? Если это так, сообщите об этом, а также о проблеме, с которой вы столкнулись. –
related: http://stackoverflow.com/questions/5098580/implementing-argmax-in-python также обратите внимание, что [max может принимать итеративную и настраиваемую функцию] (https://docs.python.org/2/library/functions.html#max) – Paul