Pending removal in Python 3.15
- The import system:
- Setting
__cached__on a module while failing to set__spec__.cached <importlib.machinery.ModuleSpec.cached>is deprecated. In Python 3.15,__cached__will cease to be set or take into consideration by the import system or standard library. (97879)
- Setting
ctypes:- The undocumented
!ctypes.SetPointerTypefunction has been deprecated since Python 3.13.
- The undocumented
http.server:- The obsolete and rarely used
!CGIHTTPRequestHandlerhas been deprecated since Python 3.13. No direct replacement exists. Anything is better than CGI to interface a web server with a request handler. - The
!--cgiflag to thepython -m http.servercommand-line interface has been deprecated since Python 3.13.
- The obsolete and rarely used
importlib:load_module()method: useexec_module()instead.
pathlib:!.PurePath.is_reservedhas been deprecated since Python 3.13. Useos.path.isreservedto detect reserved paths on Windows.
platform:!platform.java_verhas been deprecated since Python 3.13. This function is only useful for Jython support, has a confusing API, and is largely untested.
sysconfig:- The check_home argument of
sysconfig.is_python_buildhas been deprecated since Python 3.12.
- The check_home argument of
threading:~threading.RLockwill take no arguments in Python 3.15. Passing any arguments has been deprecated since Python 3.14, as the Python version does not permit any arguments, but the C version allows any number of positional or keyword arguments, ignoring every argument.
types:types.CodeType: Accessing!codeobject.co_lnotabwas deprecated in626since 3.10 and was planned to be removed in 3.12, but it only got a properDeprecationWarningin 3.12. May be removed in 3.15. (Contributed by Nikita Sobolev in101866.)
typing:- The undocumented keyword argument syntax for creating
~typing.NamedTupleclasses (for example,Point = NamedTuple("Point", x=int, y=int)) has been deprecated since Python 3.13. Use the class-based syntax or the functional syntax instead. - When using the functional syntax of
~typing.TypedDicts, failing to pass a value to the fields parameter (TD = TypedDict("TD")) or passingNone(TD = TypedDict("TD", None)) has been deprecated since Python 3.13. Useclass TD(TypedDict): passorTD = TypedDict("TD", {})to create a TypedDict with zero field. - The
!typing.no_type_check_decoratordecorator function has been deprecated since Python 3.13. After eight years in thetypingmodule, it has yet to be supported by any major type checker.
- The undocumented keyword argument syntax for creating
!sre_compile,!sre_constantsand!sre_parsemodules.wave:- The
getmark(),setmark()andgetmarkers()methods of the~wave.Wave_readand~wave.Wave_writeclasses have been deprecated since Python 3.13.
- The
zipimport:!zipimport.zipimporter.load_modulehas been deprecated since Python 3.10. Use~zipimport.zipimporter.exec_moduleinstead. (125746.)
这篇文档对你有帮助吗?
谢谢你的反馈!