Разный результат у метода type()
недавно начал изучать python и наткнулся на интересный результат метода type()
Почему в данном случае результат будет < class 'list'>
x=[1]
x.pop(0)
print(type(x)
А вот в этом случае результат будет < class 'int'>
y=[3]
print(type(y.pop(0)))
Python 3.9.7
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
потому, что в первом случае вы проверяете тип пустого списка x, а во втором случае идет проверка результата, который возвращается при вызове y.pop(0) - первым элементом списка y является целое число 3, поэтому вы получаете < class 'int'>.
Наглядный пример:
x = ['string']
print(type(x.pop(0)))
# <class 'str'>
print(type(x))
# <class 'list'>