当前位置: 首页 > Python编程 > Python编程实战技能 > Python编程基础入门 > python3.6有什么优势

python3.6有什么优势

发布时间:2020年09月27日 08:19:58 来源: 点击量:535

【摘要】1 格式化字符串字面量PEP 498引入了 f-string,一种新型的字符串字面量。中文翻译为“格式化字符串字面量”。这种字符串以 f 为前缀

1. 格式化字符串字面量

PEP 498引入了 f-string,一种新型的字符串字面量。中文翻译为“格式化字符串字面量”。

这种字符串以 f 为前缀,类似 str.format() 方法所接受的字符串。其中的可替换字段用 {} 包裹起来,在运行时进行求值。

具体代码示例:

>>> width = 10
>>> precision = 4
>>> value = decimal.Decimal("12.34567")
>>> f"result: {value:{width}.{precision}}"  # nested fields
'result:      12.35'

相关推荐:《Python教程》

2. 变量注释语法

此前,Python 已加入了对函数变量类型进行注释的标准,也就是 type hint。而 Python 3.6 中则根据PEP 526的提议,加入了对更多变量类型注释的功能,包括类变量和实例变量。

具体代码示例:

captain: str # 未设置初始值
class Starship:
    stats: Didct[str, int] = {}

与静态语言中的变量声明不同,Python 中的变量声明是为了更加方便地位第三方工具和库提供结构化的类型元数据。会使用到新语法的工具包括:mypy,pytype,PyCharm,等等。

3. 数字字面量使用下划线

对于较大的数字来说,位数太多可能不好判断值到底有多大。现在新版本中将允许你在数字字面量中使用下划线,提高可读性。

具体代码示例:

>>> 1_000_000_000_000_000
1000000000000000
>>> 0x_FF_FF_FF_FF
4294967295

4. 异步生成器

在上一个版本中,Python 引入了对原生协程的支持,并可使用 async 或 await 语法,但是有一个限制是没办法在同一个函数体中使用 await 和 yield 。这个限制在 3.6 版中取消了,因此以后将可以定义异步生成器。

具体代码示例:

async def ticker(delay, to):
    """Yield numbers from 0 to *to* every *delay* seconds."""
    for i in range(to):        yield i
        await asyncio.sleep(delay)

使用新语法,可以让你的代码更简洁,运行速度更快。

5. 异步推导

推导(Comprehension)本身就是 Python中一个很棒的语法糖。在新版本中,它将得到一次重大升级。PEP 530提出了在列表、元组、字典推导或生成器表达式中使用 async for 语法。

这样就将原有各种推导式变成了可支持异步。

同时,推导式中还支持使用 await 表达式。

以上就是 3.6 版本中新增的 5 大特性:

·格式化字符串字面量

·变量注释语法

·数字字面量使用下划线

·异步生成器

·异步推导

新版本中还新增了一些库,而且听说字典类型重新实现了,里面的元素会是有序的。

分享到: 编辑:wangmin

就业培训申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

预约成功

本直播为付费学员的直播课节

请您购买课程后再预约

环球青藤移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球青藤官方微信服务平台

刷题看课 APP下载

免费直播 一键购课

代报名等人工服务

课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部