Following system colour scheme - Python 增强提案 Selected dark colour scheme - Python 增强提案 Selected light colour scheme - Python 增强提案

Python 增强提案

PEP 42 – 功能请求

作者:
Jeremy Hylton <jeremy at alum.mit.edu>
状态:
已撤回
类型:
流程
创建日期:
2000年9月12日
发布历史:


目录

重要

本 PEP 已撤回。

×

它已过时。所有新的功能请求都应提交至 Python 错误追踪器(针对非常简单的请求)或 Ideas Discourse 类别(针对所有其他请求)。本文档的其余部分仅为历史目的保留。

引言

本 PEP 包含一份功能请求列表,这些请求可能会在 Python 的未来版本中考虑。大型功能请求不应包含在此处,而应在单独的 PEP 中描述;但是,没有自己的 PEP 的大型功能请求可以在此处列出,直到创建其自己的 PEP。有关详细信息,请参阅 PEP 0

创建此 PEP 是为了允许我们关闭实际上是功能请求的错误报告。标记为“开放”时,它们会分散对真正错误的列表的注意力(理想情况下应少于一页)。标记为“已关闭”时,它们往往会被遗忘。现在的程序是:如果一个错误报告实际上是一个功能请求,则将该功能请求添加到此 PEP 中;将该错误标记为“功能请求”、“稍后”和“已关闭”;并向该错误添加一条评论,说明这是这种情况(明确提及 PEP)。将大型功能请求直接从错误数据库转移到单独的 PEP 也是可以接受的。

本 PEP 实际上应该分为四个不同的类别(类别由 Laura Creighton 提出)

  1. BDFL 认为这是个坏主意,并拒绝了。不要再提了。
  2. 如果有人编写代码,BDFL 将会实现它。(或者至少,如果你带着代码出现,BDFL 会说“改一下,我就把它放进去”。)

    可能分为

    1. BDFL 非常想看到一些代码!
    2. BDFL 对此永远不会热情,但当它容易实现时会把它放进去。
  3. 如果你带着代码出现,BDFL 会发表声明。它可能是“令人讨厌的”。
  4. 这太模糊了。这被拒绝了,但仅因为模糊。如果你喜欢这个增强功能,请创建一个新的 PEP。

核心语言 / 内置

  • 解析器应该处理更深层嵌套的解析树。

    以下代码将会失败——eval("["*50 + "]"*50)——因为解析器对栈大小有一个硬编码的限制。这个限制应该提高或移除。移除会很困难,因为如果嵌套太深,当前的编译器可能会导致 C 栈溢出。

    https://bugs.python.org/issue215555

  • 非意外的 IEEE-754 支持(无穷大、NaN、可设置的陷阱等)。大项目。
  • Windows:尝试创建(甚至访问)某些特殊名称的文件可能会导致 Windows 系统挂起或崩溃。这实际上是操作系统中的一个错误,但有些应用程序试图保护用户免受其害。当它发生时,症状非常令人困惑。

    使用名为 prn.txt 等文件时挂起 https://bugs.python.org/issue481171

  • eval 和自由变量:如果有一种方法可以在传递带有自由变量的代码对象时,将自由变量的绑定传递给 eval,这可能很有用。https://bugs.python.org/issue443866

标准库

C API 期望

  • 添加 C API 函数,以帮助那些构建嵌入式应用程序的 Windows 用户,其中 FILE * 结构与解释器编译时使用的 FILE * 不匹配。

    https://bugs.python.org/issue210821

    请参阅此错误报告,其中包含一项具体建议,该建议将允许 Borland C++ builder 应用程序与使用 MSVC 构建的 python.dll 进行交互。

工具

构建和安装


来源:https://github.com/python/peps/blob/main/peps/pep-0042.rst

最后修改:2024-04-14 20:08:31 GMT