@@ -615,7 +615,7 @@ Process-wide parameters
615615 returned string points into static storage; the caller should not modify its
616616 value. This corresponds to the :makevar: `prefix ` variable in the top-level
617617 :file: `Makefile ` and the :option: `--prefix ` argument to the :program: `configure `
618- script at build time. The value is available to Python code as ``sys.prefix ``.
618+ script at build time. The value is available to Python code as ``sys.base_prefix ``.
619619 It is only useful on Unix. See also the next function.
620620
621621 This function should not be called before :c:func: `Py_Initialize `, otherwise
@@ -625,7 +625,8 @@ Process-wide parameters
625625 It now returns ``NULL `` if called before :c:func: `Py_Initialize `.
626626
627627 .. deprecated-removed :: 3.13 3.15
628- Get :data: `sys.prefix ` instead.
628+ Get :data: `sys.base_prefix ` instead, or :data: `sys.prefix ` if
629+ :ref: `virtual environments <venv-def >` need to be handled.
629630
630631
631632.. c :function :: wchar_t * Py_GetExecPrefix ()
@@ -638,7 +639,8 @@ Process-wide parameters
638639 should not modify its value. This corresponds to the :makevar: `exec_prefix `
639640 variable in the top-level :file: `Makefile ` and the ``--exec-prefix ``
640641 argument to the :program: `configure ` script at build time. The value is
641- available to Python code as ``sys.exec_prefix ``. It is only useful on Unix.
642+ available to Python code as ``sys.base_exec_prefix ``. It is only useful on
643+ Unix.
642644
643645 Background: The exec-prefix differs from the prefix when platform dependent
644646 files (such as executables and shared libraries) are installed in a different
@@ -669,7 +671,8 @@ Process-wide parameters
669671 It now returns ``NULL`` if called before :c:func:`Py_Initialize`.
670672
671673 .. deprecated-removed:: 3.13 3.15
672- Get :data:`sys.exec_prefix` instead.
674+ Get :data:`sys.base_exec_prefix` instead, or :data:`sys.exec_prefix` if
675+ :ref:`virtual environments <venv-def>` need to be handled.
673676
674677
675678.. c:function:: wchar_t* Py_GetProgramFullPath()
@@ -2368,7 +2371,7 @@ Example usage::
23682371
23692372In the above example, :c:macro:`Py_SETREF` calls :c:macro:`Py_DECREF`, which
23702373can call arbitrary code through an object's deallocation function. The critical
2371- section API avoids potentital deadlocks due to reentrancy and lock ordering
2374+ section API avoids potential deadlocks due to reentrancy and lock ordering
23722375by allowing the runtime to temporarily suspend the critical section if the
23732376code triggered by the finalizer blocks and calls :c:func:`PyEval_SaveThread`.
23742377
0 commit comments