Когда вы имеете дело с нетипизированными языками (например, Python), ни один из ваших атрибутов не имеет определенного типа.На любом типизированном языке вы решаете во время компиляции, какой тип может принимать атрибут.Я не знаю ни одного языка, который позволял бы назначать набор типов любому атрибуту.
Предполагая, что вы говорите о нетипизированных языках, вы бы добавили ограничение к своим обычно нетипизированным атрибутам, сообщая что-то вроде { must take either type A or B }
.Конечно, компилятор / интерпретатор не поможет вам проверить эти ограничения.