# Pending removal in Python 3.20

- Calling the `__new__()` method of `struct.Struct` without the format argument is deprecated and will be removed in Python 3.20. Calling `__init__()` method on initialized `Struct` objects is deprecated and will be removed in Python 3.20.

  (Contributed by Sergey B Kirpichev and Serhiy Storchaka in gh-143715.)

- 在这些标准库模块中的 `__version__`, `version` 和 `VERSION` 属性已被弃用并将在 Python 3.20 中移除。 请改用 `sys.version_info`。

  - `argparse`

  - `csv`

  - `ctypes`

  - `ctypes.macholib`

  - `decimal` (改用 `decimal.SPEC_VERSION`)

  - `http.server`

  - `imaplib`

  - `ipaddress`

  - `json`

  - `logging` (`__date__` 也已被弃用)

  - `optparse`

  - `pickle`

  - `platform`

  - `re`

  - `socketserver`

  - `tabnanny`

  - `tarfile`

  - `tkinter.font`

  - `tkinter.ttk`

  - `wsgiref.simple_server`

  - `xml.etree.ElementTree`

  - `xml.sax.expatreader`

  - `xml.sax.handler`

  - `zlib`

  （由 Hugo van Kemenade 和 Stan Ulbrych 在 gh-76007 中贡献。）

- 由 PEP 829 定义的弃用：

  - 为在 `name.pth` 文件中找到的 `import` 行产生警告。

  - `name.pth` 文件将不再以默认语言区域编码格式解码。 它们 必须 使用 `utf-8-sig` 编码。

  （由 Barry Warsaw 在 gh-148641 中贡献。）

- `ast`:

  - 创建抽象 AST 节点 (如 `ast.AST` 或 `ast.expr`) 的做法已被弃用并将在 Python 3.20 中引发错误。