> **Источник:** https://python-all.ru/2.7/library/aetypes.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

# 38.4. [`aetypes`](https://python-all.ru/2.7/library/aetypes.html#module-aetypes) – объекты AppleEvent

Модуль [`aetypes`](https://python-all.ru/2.7/library/aetypes.html#module-aetypes) определяет классы, используемые для представления дескрипторов данных Apple Event и спецификаторов объектов Apple Event.

Данные Apple Event содержатся в дескрипторах, и эти дескрипторы типизированы. Для многих дескрипторов представление Python – это просто соответствующий тип Python: `typeText` в OSA – это строка Python, `typeFloat` – число с плавающей точкой и т. д. Для типов OSA, не имеющих прямого аналога в Python, этот модуль объявляет классы. Упаковка и распаковка экземпляров этих классов выполняется автоматически с помощью [`aepack`](https://python-all.ru/2.7/library/aepack.html#module-aepack).

Спецификатор объекта – это, по сути, адрес объекта, реализованного на сервере Apple Event. Спецификатор Apple Event используется как прямой объект для Apple Event или как аргумент необязательного параметра. Модуль [`aetypes`](https://python-all.ru/2.7/library/aetypes.html#module-aetypes) содержит базовые классы для классов и свойств OSA, которые используются пакетами, сгенерированными [`gensuitemodule`](https://python-all.ru/2.7/library/gensuitemodule.html#module-gensuitemodule), для заполнения классов и свойств в заданном наборе.

По причинам обратной совместимости, а также для случаев, когда нужно написать сценарий для приложения, для которого не был сгенерирован пакет-заглушка, этот модуль также содержит спецификаторы объектов для ряда распространённых классов OSA, таких как `Document`, `Window`, `Character` и т. д.

> **Примечание**
>
> Этот модуль удалён в Python 3.x.

Модуль `AEObjects` определяет следующие классы для представления данных дескрипторов Apple Event:

#### `class aetypes.Unknown(type, data)`

Представление данных дескриптора OSA, для которых модули [`aepack`](https://python-all.ru/2.7/library/aepack.html#module-aepack) и [`aetypes`](https://python-all.ru/2.7/library/aetypes.html#module-aetypes) не предоставляют поддержки, т. е. всё, что не представлено другими классами здесь и что не эквивалентно простому значению Python.

#### `class aetypes.Enum(enum)`

Значение перечисления с заданным 4-символьным строковым значением.

#### `class aetypes.InsertionLoc(of, pos)`

Позиция `pos` в объекте `of`.

#### `class aetypes.Boolean(bool)`

Булево значение.

#### `class aetypes.StyledText(style, text)`

Текст со включённой информацией о стиле (шрифт, начертание и т. д.).

#### `class aetypes.AEText(script, style, text)`

Текст со включённой информацией о системе письма и стиле.

#### `class aetypes.IntlText(script, language, text)`

Текст со включённой информацией о системе письма и языке.

#### `class aetypes.IntlWritingCode(script, language)`

Информация о системе письма и языке.

#### `class aetypes.QDPoint(v, h)`

Точка QuickDraw.

#### `class aetypes.QDRectangle(v0, h0, v1, h1)`

Прямоугольник QuickDraw.

#### `class aetypes.RGBColor(r, g, b)`

Цвет.

#### `class aetypes.Type(type)`

Значение типа OSA с указанным 4-символьным именем.

#### `class aetypes.Keyword(name)`

Ключевое слово OSA с указанным 4-символьным именем.

#### `class aetypes.Range(start, stop)`

Диапазон.

#### `class aetypes.Ordinal(abso)`

Нечисловые абсолютные позиции, такие как `"firs"`, first или `"midd"`, middle.

#### `class aetypes.Logical(logc, term)`

Логическое выражение применения оператора `logc` к `term`.

#### `class aetypes.Comparison(obj1, relo, obj2)`

Сравнение `relo` `obj1` с `obj2`.

Следующие классы используются в качестве базовых классов сгенерированными пакетами-заглушками для представления классов и свойств AppleScript в Python:

#### `class aetypes.ComponentItem(which[, fr])`

Абстрактный базовый класс для класса OSA. Подкласс должен установить атрибут класса `want` в значение 4-символьного кода класса OSA. Экземпляры подклассов этого класса эквивалентны спецификаторам объектов AppleScript. При создании экземпляра следует передать селектор в `which` и, опционально, родительский объект в `fr`.

#### `class aetypes.NProperty(fr)`

Абстрактный базовый класс для свойства OSA. Подкласс должен установить атрибуты класса `want` и `which`, чтобы указать, о каком свойстве идет речь. Экземпляры подклассов этого класса являются спецификаторами объектов.

#### `class aetypes.ObjectSpecifier(want, form, seld[, fr])`

Базовый класс `ComponentItem` и `NProperty`, общего спецификатора объекта OSA. Смотрите документацию Apple Open Scripting Architecture для получения информации о параметрах. Обратите внимание, что этот класс не является абстрактным.
