Python 3.14+sysфункция
sys.is_remote_debug_enabled()
отладка и трассировка
Возвращает True, если к этому процессу можно подключиться удалённым отладчиком (sys.remote_exec, python -m pdb -p PID). Появилась в Python 3.14.
Синтаксис
sys.is_remote_debug_enabled()
По умолчанию ответ True: подключение запрещают переменная окружения PYTHON_DISABLE_REMOTE_DEBUG, опция -X disable-remote-debug (через дефис!) или сборка --without-remote-debug. Опечатка -X disable_remote_debug с подчёркиванием молча игнорируется, и защита не включается. Функция говорит только о готовности самого интерпретатора: права ОС (ptrace на Linux, root на macOS) она не проверяет.
Примеры
import sys
print(sys.is_remote_debug_enabled()) # → ? True — если не запрещено
import subprocess, sys
code = 'import sys; print(sys.is_remote_debug_enabled())'
for opt in ('disable-remote-debug', 'disable_remote_debug'):
r = subprocess.run([sys.executable, '-X', opt, '-c', code],
capture_output=True, text=True, timeout=10)
print(opt, r.stdout.strip())
# → ? disable-remote-debug False / disable_remote_debug True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности