Python 3.4.0 发布,数百项改进

kkkkk 2018年12月17日 23:10 Linux教程

Python 3.4.0 发布,此版本包括一系列 3.x 系列的改进,数百个小的改进和 bug 修复。

值得注意的更新内容如下:

新语法特性:

Python 3.4 并未添加任何新的语法特性

其他新特性:

pip should always be available (PEP 453).

Newly created file descriptors are non-inheritable(PEP 446).

command line option for isolated mode(issue 16499).

improvements in the handling of codecsthat are not text encodings (multiple issues).

A ModuleSpec Type for the Import System (PEP 451).  (Affects importer authors.)

The marshal format has been made more compact and efficient (issue 16475).

新的库模块:

asyncio: New provisional API for asynchronous IO (PEP 3156).

ensurepip: Bootstrapping the pip installer(PEP 453).

enum: Support for enumeration types(PEP 435).

pathlib: Object-oriented filesystem paths(PEP 428).

selectors: High-level and efficient I/O multiplexing, built upon the select module primitives (part of PEP 3156).

statistics: A basic numerically stable statistics library (PEP 450).

tracemalloc: Trace Python memory allocations (PEP 454).

库模块中重大的改进:

Single-dispatch generic functions infunctools (PEP 443).

New pickle protocol 4 (PEP 3154).

multiprocessing now has an option to avoid using os.fork on Unix (issue 8713).

email has a new submodule, contentmanager, and a new Message subclass (EmailMessage) that simplify MIME handling (issue 18891).

The inspect and pydoc modules are now capable of correct introspection of a much wider variety of callable objects, which improves the output of the Python help() system.

The ipaddress module API has been declared stable

安全改进:

Secure and interchangeable hash algorithm(PEP 456).

Make newly created file descriptors non-inheritable(PEP 446) to avoid leaking file descriptors to child processes.

New command line option for isolated mode, (issue 16499).

multiprocessing now has an option to avoid using os.fork on Unix.  spawn and forkserver are more secure because they avoid sharing data with child processes.

multiprocessing child processes on Windows no longer inherit all of the parent’s inheritable handles, only the necessary ones.

A new hashlib.pbkdf2_hmac() function provides the PKCS#5 password-based key derivation function 2.

TLSv1.1 and TLSv1.2 support for ssl.

Retrieving certificates from the Windows system cert store support for ssl.

Server-side SNI (Server Name Indication) support for ssl.

The ssl.SSLContext class has a lot of improvements.

All modules in the standard library that support SSL now support server certificate verification, including hostname matching (ssl.match_hostname()) and CRLs (Certificate Revocation lists, seessl.SSLContext.load_verify_locations()).

CPython 实现改进:

Safe object finalization (PEP 442).

Leveraging PEP 442, in most cases module globals are no longer set to None during finalization (issue 18214).

Configurable memory allocators (PEP 445).

Argument Clinic (PEP 436).

其他的还包括许多 CPython 的优化,用法和潜在移植问题


文章评论(0)
  • avatar kkkkkk 2018年12月21日 11:31
    Youkou老师厉害吧!
    kkkkk
    2018年12月21日 11:16
    收结过早,意未尽宜文笔雄健,不落俗套。文情并茂,感人肺腑。叙述详尽,条理井然。
    回复
  • avatar kkkkkk 2018年12月21日 11:31
    真有文学修养
    kkkkklxinde
    2018年12月21日 11:17
    遣词造句,行云流水。刻画入微,栩栩如生 取材不凡,运笔如飞。 词义从容,雅见情韵。
    回复
  • avatar kkkkklxinde 2018年12月21日 11:17
    遣词造句,行云流水。刻画入微,栩栩如生 取材不凡,运笔如飞。 词义从容,雅见情韵。
    回复
  • avatar kkkkk 2018年12月21日 11:16
    收结过早,意未尽宜文笔雄健,不落俗套。文情并茂,感人肺腑。叙述详尽,条理井然。
    回复