Найти - Пользователи
Полная версия: Поясните, пожалуйста, как в Python объекты знают, к какому типу они принадлежат
Начало » Python для новичков » Поясните, пожалуйста, как в Python объекты знают, к какому типу они принадлежат
1
Kentavr
Привожу цитату:

"Все элементы данных в языке Python являются объектами (называе
мых также экземплярами) определенных типов данных (называемых
также классами). Мы будем использовать термины тип данных
и класс как взаимозаменяемые. Одно из основных отличий между объ
ектом и простым элементом данных в некоторых других языках про
граммирования (например, встроенные числовые типы в C++ или Java)
состоит в том, что объект может обладать методами. В сущности, ме
тод – это обычная функция, которая вызывается в контексте конкрет
ного объекта. Например, тип list имеет метод append(), с помощью ко
торого можно добавить новый объект в список, как показано ниже:
>>> x = [“zebra”, 49, 879, “aardvark”, 200]
>>> x.append(“more”)
>>> x
['zebra', 49, 879, ‘aardvark’, 200, ‘more’]
Объект x знает, что принадлежит к типу list (все объекты в языке Py
thon знают, к какому типу они принадлежат),
поэтому нам не требует
ся явно указывать тип данных."

Каким образом они это знают?
Как понять, что x принадлежит к типу list?
py.user.next
Kentavr
Каким образом они это знают?
при создании они сохраняются под своим типом в памяти
а x - это просто имя, оно привязывается к объекту в памяти

если ты, к примеру, ввёл число 12 в интерпретаторе и нажал ввод, то, несмотря на то что имени у него нет, создался объект целого типа
>>> 12
12
>>> []
[]
>>>
после вывода, он удаляется из памяти (потому что имени нет)
lorien
> Как понять, что x принадлежит к типу list?

>>> x = []
>>> type(x)
<type 'list'>
>>> x.__class__
<type 'list'>
>>> isinstance(x, list)
True
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB