# Oczekujące na usunięcie w Python 3.15

- The `PyImport_ImportModuleNoBlock()`: Używać:c:func:`PyImport_ImportModule`Zamiast.

- `PyWeakref_GetObject()` I `PyWeakref_GET_OBJECT()`: Używać `PyWeakref_GetRef()` Zamiast tego. Projekt pythoncapi-compat można użyć, aby uzyskać `PyWeakref_GetRef()` w Python 3.12 i starszych.

- `PyUnicode_AsDecodedObject()` : Używać `PyCodec_Decode()` Zamiast.

- `PyUnicode_AsDecodedUnicode()` : Używać `PyCodec_Decode()` zamiast tego; Należy pamiętać, że niektóre kodeki (na przykład „base64”) mogą zwracać typ inny niż:class:str , taki jak `bytes`.

- `PyUnicode_AsEncodedObject()` : Używać `PyCodec_Encode()` Zamiast.

- `PyUnicode_AsEncodedUnicode()` : używać `PyCodec_Encode()` zamiast; Notatka że niektóre kodeki (na przykład „base64”) mogą zwracać typ inny niż:class:bytes , taki jak `str`.

- Python initialization functions, deprecated in Python 3.13:

  - `Py_GetPath()` : używać `PyConfig_Get("module_search_paths") '` <PyConfig_Get> ` (`sys.path`)

  - `Py_GetPrefix()` : używać `PyConfig_Get("base_prefix") '`»<PyConfig_Get>` (`sys.base_prefix`) Zamiast tego. używać `Py Config Pobierz("prefix") <PyConfig_Get> ` (:data:`sys.prefix()`) jeśli :ref: «venv-def`środowisko wirtualne<venv-def> ` trzeba się tym zająć.

  - `Py_GetExecPrefix()` : Używać `PyConfig_Get("base_exec_prefix") '`» <PyConfig_Get>` (`sys.base_exec_prefix`) Zamiast tego Używać `PyConfig_Get("exec_prefix") <PyConfig_Get> ` ( :data:`sys.exec_prefix()`) jeśli :ref:środowisko wirtualne <venv-def> ` trzeba się tym zająć.

  - `Py_GetProgramFullPath()` : Użyj `PyConfig_Get("executable") '`»<PyConfig_Get> ` ( `sys.executable` ) Zamiast.

  - `Py_GetProgramName()` : Użyj `PyConfig Get("executable") '`» <PyConfig_Get> ` (`sys.executable` ) Zamiast.

  - `Py_GetPythonHome()` : Użyj `PyConfig_Get("home")` lub:envvar:`PYTHONHOME`zmienna środowiskowa.

  Projekt python api-compat można użyć do uruchomienia :c:func:`PyConfig_Get`Pythona w wersji 3.13 i starszych.

- Funkcje do konfiguracji Pythona,inicjalizacja przestarzały w Python 3.11:

  - `PySys_SetArgvEx()` : Ustawić `PyConfig.argv` Zamiast.

  - `PySys_SetArgv()` : Ustawić `PyConfig.argv` Zamiast.

  - `Py_SetProgramName()` : Ustawić `PyConfig.program_name` Zamiast.

  - `Py_SetPythonHome()`: Set `PyConfig.home` instead.

  - `PySys_ResetWarnOptions()` Wyczyść `sys.warnoptions` i `warnings.filters` zamiast tego.

  The `Py_InitializeFromConfig`API należy używać z :c:type:`PyConfig()` Zamiast.

- Globalne zmienne konfiguracyjne:

  - `Py_DebugFlag` : używać `PyConfig.parser_debug` Lub tego użyj `PyConfig_Get("parser_debug") <PyConfig_Get> Zamiast.()` .

  - `Py_VerboseFlag` :używać `PyConfig.verbose` or :c:func:`PyConfig_Get(„verbose”) <PyConfig_Get> ` zamiast.

  - `Py_QuietFlag` : Zamiast tego użyj `PyConfig.quiet` `PyConfig_Get("quiet") '`» .<PyConfig_Get> `Zamiast

  - `Py_InteractiveFlag` : używać `PyConfig.interactive` lub `PyConfig_Get("interaktywny") '`» <PyConfig_Get> Zamiast.

  - `Py_InspectFlag` : używać `PyConfig.inspect` `PyConfig_Get("inspect")` zamiast tego.

  - `Py_OptimizeFlag` Używać `PyConfig.optimization_level` lub `PyConfig_Get("optimization_level")` zamiast tego.

  - `Py_NoSiteFlag` używać :c:member:`PyConfig.site_import`lub :c:func:`PyConfig_Get(„site_import”) <PyConfig_Get> zamiast tego.

  - `Py_BytesWarningFlag` : używać `PyConfig.bytes_warning` lub :c:func:`PyConfig_Get(„bytes_warning”) <PyConfig_Get> zamiast tego.

  - `Py_FrozenFlag` : używać `PyConfig.pathconfig_warnings` lub: `PyConfig_Get("pathconfig_warnings") '`» <PyConfig_Get> Zamiast.

  - `Py_IgnoreEnvironmentFlag` : używać `PyConfig.use_environment` lub `PyConfig_Get("use_environment") '`» <PyConfig_Get> zamiast tego.

  - `Py_DontWriteBytecodeFlag`: Use `PyConfig.write_bytecode` or `PyConfig_Get("write_bytecode")` instead.

  - `Py_NoUserSiteDirectory` : używać `PyConfig.user_site_directory` lub `PyConfig_Get("user_site_directory") '`» <PyConfig_Get> zamiast tego.

  - `Py_UnbufferedStdioFlag` : Użyj `PyConfig.buffered_stdio` lub :c:func:`PyConfig_Get(„buffered_stdio”) <PyConfig_Get> zamiast tego.

  - `Py_HashRandomizationFlag` : Używać `PyConfig.use_hash_seed` I `PyConfig.hash_seed` or :c:func:`PyConfig_Get(„hash_seed”) <PyConfig_Get> zamiast tego.

  - `Py_IsolatedFlag`:używać:c:member:`PyConfig.isolated` lub `PyConfig_Get '`»(„isolated”)<PyConfig_Get> `zamiast tego.

  - `Py_LegacyWindowsFSEncodingFlag`: używać `PyPreConfig.legacy_windows_fs_encoding` lub `PyConfig_Get("legacy_windows_fs_encoding") '`»<PyConfig_Get> `zamiast tego.

  - `Py_LegacyWindowsStdioFlag`używać :c:member:`PyConfig.legacy_windows_stdio` `PyConfig_Get("legacy_windows_stdio") '`» lub zamiast tego.

  - `Py_FileSystemDefaultEncoding`,:c:var:!Py_HasFileSystemDefaultEncoding: używać `PyConfig.filesystem_encoding`lub '`» :c:func:`PyConfig_Get(„filesystem_encoding”) <PyConfig_Get>zamiast tego.

  - `Py_FileSystemDefaultEncodeErrors`: używać `PyConfig.filesystem_errors` lub :c:func:`PyConfig_Get(„filesystem_errors”) <PyConfig_Get>`zamiast tego.

  - `Py_UTF8Mode`: używać `PyPreConfig.utf8_mode` lub `PyConfig_Get("utf8_mode")` zamiast tego (Widzieć:c:func:Py_PreInitialize)

  The:c:func:Py_InitializeFromConfig API należy używać z:c:type:PyConfig`aby ustawić te opcje. Można:c:func:`PyConfig_Get też użyć tego polecenia, aby uzyskać te opcje w czasie wykonywania.