20
Апр
2018

Определение реального типа данных в списке

Требуется определить реальный тип данных в списке содержащий строки вида:

a = ['-1.8', 'a', 'b', '4']

Делаю это в цикле с использованием исключений при преобразовании типов данных так:

j = []
for i in a:
    try:
        j.append(int(i))
    except ValueError:
        try:
            j.append(float(i))
        except ValueError:
            j.append(i)
print(j)

Результатом будет:

[-1.8, 'a', 'b', 4]

Но не покидает меня стойкое ощущение что есть способ проще. Подскажите плз.

Источник: https://ru.stackoverflow.com/questions/816710/%D0%9E%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D1%80%D0%B5%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE-%D1%82%D0%B8%D0%BF%D0%B0-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D0%B2-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B5

Тебе может это понравится...

Добавить комментарий