热门排行
简介
Python 3.9.0是Python编程语言的最新主要版本,它包含许多新功能和优化。这是Windows上默认为64位安装程序的Python的第一个版本,同时Python 3.9不支持Windows 7操作系统安装使用,Python是一种面向对象、直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。欢迎需要Python 3.9最新版本程序的朋友前来下载使用。
Python 3.9 是提供 python2 兼容层的版本,这能给python开发者更多时间移除python2支持和支持python3.9。
例如,collections 模块中 抽象基类 的别名,例如 collections.abc.Mapping 的别名 collections.Mapping 会为向下兼容最后保留一个发行版。它们将在 Python 3.10 中被移除。
系统要求:
至少需要Windows 8.1或Windows Server 2012才能安装python 3.9.0
请注意,Python 3.9+不能在Windows 7或更早版本上使用。
3.9寿命
3.9大约每2个月将收到错误修复更新,大约持续18个月。在3.10.0最终版本发布后的某个时间,将发布第九个和最终的3.9错误修正更新。之后,预计安全更新(仅源)将在3.9最终版发布之后的5年内发布,直到2025年10月左右。
与 3.8 系列相比,Python 3.9 的主要亮点有:
新的语法特性
PEP 584,union operators 已添加至 dict;
PEP 585,标准集合中的类型提示泛型;
PEP 614,放宽对装饰器的语法限制。
新的内置特性
PEP 616,用于删除前缀和后缀的字符串方法。
标准库的新特性
PEP 593,灵活的函数和变量注释;
添加了 os.pidfd_open(),允许进行进程管理,而不产生竞争和信号。
改进 Interpreter
PEP 573,从 C 扩展类型的方法快速访问模块状态;
PEP 617,CPython 现在使用了一个基于 PEG 的新解析器;
使用 PEP 590 vectorcall 加快了许多 Python 内置函数(范围、元组、集合、frozenset、列表、字典)的速度;
垃圾回收不会阻止复活的对象;
许多 Python 模块(_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, math, operator, resource, time, _weakref)都使用 PEP 489 定义的多阶段初始化;
许多标准库模块(audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib)都使用 PEP 384 定义的稳定 ABI。
新的库模块
PEP 615,即 IANA 时区数据库现在位于 zoneinfo 模块的标准库中;
新的 graphlib 模块中提供了图的拓扑排序的实现。
发布周期变更
PEP 602,CPython 采用年度发布周期。
新的特性
1.字典合并与更新运算符
合并 (|) 和 更新 (|=) 运算符已经添加到字典里了,这些补充了现有的 dict.update 和 {** d1,** d2} 合并字典的方法。
示例:
>>> x ={"key1":"value1 from x","key2":"value2 from x"}
>>> y ={"key2":"value2 from y","key3":"value3 from y"}
>>> x | y
{'key1':'value1 from x','key2':'value2 from y','key3':'value3 from y'}
>>> y | x
{'key2':'value2 from x','key3':'value3 from y','key1':'value1 from x'}
```
2.字符串的去除前缀/后缀的方法
增加了 str.removeprefix(prefix) 和 str.removesuffix(suffix) 用于方便地从字符串移除不需要的前缀或后缀。也增加了 bytes, bytearray 以及 collections.UserString 的对应方法。请参阅 PEP 616 了解详情。(由 Dennis Sweeney 在 bpo-39939 中贡献。)
3.类型的标注
在类型标注中现在你可以使用内置多项集类型例如 list 和 dict 作为通用类型而不必从 typing 导入对应的大写形式类型名 (例如 List 和 Dict)。标准库中的其他一些类型现在同样也是通用的,例如 queue.Queue。
示例:
def greet_all(names: list[str])->None:
for name in names:
print("Hello", name)
```
4.New Parser
Python 3.9 使用于基于 PEG 的新解析器替代 LL(1)。新解析器的性能与旧解析器大致相当,但 PEG 在设计新语言特性时的形式化比 LL(1) 更灵活。我们将在 Python 3.10 及之后版本中开始使用这种灵活性。
ast 模块会使用新解析器并会生成与旧解析器一致的 AST。
在 Python 3.10 中,旧解析器将被移除,依赖于它的所有功能也将被移除(主要是 parser 模块,它早已被弃用)。只有 在 Python 3.9 中,你可以使用命令行开关 (-X oldparser) 或环境变量 (PYTHONOLDPARSER=1) 切换回 LL(1) 解析。
Python 语言的特点:
简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。
易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。
免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自 由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么 Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。
高层语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括 Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS /390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC和Symbian!
解释性————这一点需要一些解释。一个用编译性语言比如C或C++写的程序可以从源文件(即 C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/ 转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码 运行 程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心 如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它 就可以工作了,这也使得你的Python程序更加易于移植。
面向对象————Python即支持面向过程的编程也支持面向对象的编程。在“面向过程”的语 言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如 C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。
可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
丰富的库————Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、 文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户 界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以 外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
概括————Python确实是一种十分精彩又强大的语言。它合理地结合了高性能与使得编写程序简单有趣的特色。