Добавьте вызов int ().

я есть список в этом формате:

exon_start exon_finish имя_гена (повторяется сотни раз)

Я хочу отсортировать по exon_start

Пример списка:

 ['8342758', '8344137', 'NM_001042682']
 ['85420368', '85421471', 'NM_032184']
 ['86363115', '86364485', 'NM_152890']
 ['89820771', '89822936', 'NM_015350']
 ['904123', '905900', 'NR_027693']
 ['91176416', '91179454', 'NM_201269']
 ['92418409', '92420740', 'NM_015237']
 ['93575521', '93577419', 'NR_034089']
 ['94114411', '94116006', 'NM_014597']
 ['99926918', '99928016', 'NM_017734']

Этот список списков (напечатанный выше) уже отсортирован с использованием следующего кода:

sorted_triplets = sorted(triplets, key=lambda x: x[0])
for i in sorted_triplets:
    print i

Тем не менее, «отсортировано» не работает, как я ожидаю. Как видно из списка, 904123 меньше, чем 89820771. Таким образом, похоже, что «отсортированные» сравнивают не числа в целом, а отдельные цифры.

Как я могу это исправить?

Ответы на вопрос(2)

Ваш ответ на вопрос