Как работать с куском списка?
Можно либо регулярками разделить (re.split()), либо заменить ":" на ";" а затем split как у тебя - получишь список, где все четные элементы - интересующие тебя цифры
Замена:teststr = 'elemen1:12345;element2:54321;element3:6789'
result_list = teststr.replace(':', ';').split(';')
print('Result:', result_list)Result: ['elemen1', '12345', 'element2', '54321', 'element3', '6789']
С помощью модуля re:import re

teststr = 'elemen1:12345;element2:54321;element3:6789'
result_list = re.split('[;:]', teststr)
print('Result:', result_list)Result: ['elemen1', '12345', 'element2', '54321', 'element3', '6789']
UPD: Если предполагается, что у тебя все цифры - положительные, то легко можно в результирующем списке оставить только цифры:teststr = 'elemen1:12345;element2:54321;element3:6789'
result_list = [elem for elem in teststr.replace(':', ';').split(';') if elem.isdigit()]
print(result_list)
['12345', '54321', '6789']
Если цифры могут быть и отрицательными, то тоже легко но по другому)))
Вдобавок к первой строчке нужно написать еще
Общий смысл - проходимся по каждому элементу, полученному первой строкой, и разделяем по двоеточию