Где находится исходный код os.pipe в CPython

#python-3.x

#python-3.x

Вопрос:

Я использую встроенный в python подпроцесс lib и читаю его исходный код. Когда я хочу прочитать реализацию os.pipe, я не смог найти его определение. https://github.com/python/cpython/blob/master/Lib/os.py Кто-нибудь может сказать мне, почему? Спасибо.

Ответ №1:

Реализация низкоуровневых зависящих от ОС примитивов не находится на уровне Python; она скрыта в модуле posix (UNIX-подобном) или nt (Windows), расширении C, и просто импортируется и публикуется через модуль уровня Python os .

Удобно, что оба posix и nt реализованы в одном файле posixmodule.c (он просто получает другое имя при компиляции в зависимости от платформы), поэтому вы можете найти там всю информацию (вам просто нужно убедиться, что вы читаете часть для своей целевой платформы).

Комментарии:

1. Спасибо, я буду следовать вашим указаниям.