реализация библиотеки os python в API блендера Python - PullRequest
0 голосов
/ 13 марта 2019

Мне пришлось создать и записать в текстовый файл скрипт Python Blender.документация здесь говорит, что с помощью функции fdopen() можно открыть txt-файл в виде потока в вашем коде.

Однако fdopen(), похоже, не реализован в Python API в Blender.Вместо этого он комментируется как #supply fdopen().на самом деле вы можете делать то, что fdopen() должен делать с другой функцией open(), которая является встроенной функцией Python API (по-видимому, не принадлежит OS).

Кроме того, если я использую os.open() в blender, он возвращает целое число вместо файла.Означает ли это, что реализация модуля Blender OS отличается от «нативной» Python OS?

Я имею в виду, эта библиотека «переписана» на C разработчиками blender?У меня нет опыта работы в области компьютерных наук, поэтому я не могу понять, почему это происходит, если я прав в своем предположении.Насколько я понимаю, BDFL написал модуль OS на C, и теперь он должен отлично работать для всех и везде.почему бы просто не взять его и встроить в Python API в Blender?Может кто-нибудь объяснить мне это более подробно?

1 Ответ

0 голосов
/ 14 марта 2019

Blender использует модуль Python OS по умолчанию. os.open возвращает дескриптор файла (int);встроенная глобальная функция open возвращает объект файла - это то, что вы должны использовать для обычного доступа к файлу.

...