Как разделить список на 2 списка(в 1 списке данные str, в другом int)
Есть список
li = ['cow', '1', 'cat', '2', 'dog', '3']
В списке li все данные str.
Нужно разделить этот список на 2 других списка.
1 список будет выглядеть так(в нем все данные типа str):
animals = ['cow', 'cat', 'dog']
2список так(в нем все данные типа int):
num = ['1', '2', '3']
Как это сделать?
Ответы (2 шт):
Автор решения: VOLK
→ Ссылка
def split_animals_and_num(data):
animals = []
num = []
for i in data:
try:
num.append(int(i))
except ValueError:
animals.append(i)
return (animals, num)
li = ['cow', '1', 'cat', '2', 'dog', '3']
animals, num = split_animals_and_num(li)
Автор решения: Dmitry
→ Ссылка
Добавлю еще вариант решения
li = ['cow', '1', 'cat', '2', 'dog', '3']
animals = []
num = []
for i in li:
num.append(i) if i.isnumeric() else animals.append(i)