Модуль Python 'os' не имеет атрибута 'mknod'

Я хочу создать новый файл в Python для которого я использую mknod команда, но получить ошибку как:

os.mknod();
AttributeError: module 'os' has no attribute 'mknod'

Я использую окна и атрибуты, кроме 'mknod' работают.

1 ответ

Решение

os предлагает функциональность, тесно связанную с используемой ОС. Если большинство других атрибутов доступны из os (то есть у вас нет os.py файл в текущем каталоге, маскирующий стандартный модуль) AttributeError 99% сигнализирует о неподдерживаемой функции в вашей операционной системе.

Вот в чем дело os.mknod на винде. Создание именованных каналов в Windows насколько я понимаю, имеет очень разную семантику.

В любом случае, если вы пытаетесь использовать mknod для создания именованных каналов вы, вероятно, лучше использовать mkfifo() (опять же, только Unix поддерживается) . Если вы используете его для создания обычных файлов, не используйте open() который является портативным

Другие вопросы по тегам