Извлечение элементов из списка по типу - PullRequest
0 голосов
/ 03 мая 2020

Мне интересно, какой самый быстрый способ извлечь элементы определенного c типа из списка. Я разместил наиболее многообещающие варианты ниже. Я рад услышать о других вариантах.

Кроме того, я хотел бы понять , почему этот параметр c является самым быстрым. Я думаю, option 2 выигрывает, но я не могу объяснить, почему. Для меня это выглядит просто умнее.

myList = [0, 1, "foo", 3.4, "baa", None]

requiredType = int


# option 1:
newList = []
for e in myList:
    if type(e) == requiredType:
        newList.append(e)

# option 2:
newList = [e for e in myList if type(e) == requiredType]



print(newList)
>>>> [0,1]
...