Python 3.6新特性(部分)
Python 3.6.0于2016年12月23日正式发布,除了本文提到的这一部分比较重要的新特性之外,还有很多标准库也新增了部分功能,等有时间再慢慢整理。
1、内置字典对象dict进行了重新设计,可以节约20%到25%的内存
2、格式化的字符串常量,在字符串前面加字母f,含义与format()方法类似,但是更简洁
>>> name = 'Dong'
>>> age = 39
>>> f'My name is {name}, and I am {age} years old.'
'My name is Dong, and I am 39 years old.'
>>> width = 10
>>> precision = 4
>>> value = 11/3
>>> f'result:{value:{width}.{precision}}'
'result: 3.667'
3、数字常量中间位置支持使用下划线来提高可读性,类似于数学上的逗号作为千位分隔符
>>> 1_000_000
1000000
>>> 1_2_3_4
1234
>>> 1_2 + 3_4j
(12+34j)
同时,字符串格式化方法format()也提供了对下划线的支持
>>> '{0:_},{0:_x}'.format(1000000)
'1_000_000,f_4240'
>>> '{0:_},{0:_x}'.format(10000000)
'10_000_000,98_9680'
4、支持异步生成器函数,可以在同一个协程函数中同时使用await和yield
import asyncio
async def ticker(delay, to):
for i in range(to):
yield i
await asyncio.sleep(delay)
async def run():
async for i in ticker(1, 10):
print(i)
loop = asyncio.get_event_loop()
try:
loop.run_until_complete(run())
finally:
loop.close()
5、允许在协程函数中异步推导式
async def ticker(delay, to):
for i in range(to):
yield i
await asyncio.sleep(delay)
async def run():
result = [i async for i in ticker(1, 10) if i%2]
print(result)
import asyncio
loop = asyncio.get_event_loop()
try:
loop.run_until_complete(run())
finally:
loop.close()
Python 3.6新特性(部分)相关推荐
- python 3.9特性,开发者应该知道的Python 3.9新特性
导读:Python 3.9来了,有哪些新特性值得学,值得用? Python 2.9(5.10.2020)已经发布了一段时间,最后一个Alpha版(3.9.0a5)近期发布了测试版.开发者应该看新版有哪 ...
- python 3.8 新特性 video_1分钟了解:Python3.8 新特性:仅位置参数
这是Python3.8新特性的第二篇,第一篇介绍了赋值表达式,这篇文章花几分钟了解什么是仅位置参数(Positional-Only Arguments) 插播一条:我自己是一名从事了多年开发的Pyth ...
- python 3.9 新特性 简介
目录 字典"并集"运算符 类型提示的改善 装饰器语法更加灵活 classmethod 支持包装其他描述器 新增模块.函数.方法 参考资料 字典"并集"运算符 & ...
- Python 3.8 新特性全面解读
开发四年只会写业务代码,分布式高并发都不会还做程序员? 本文详细介绍 Python 3.8 中的新功能,以及和与 3.7 相比的一些不同点. 新功能 编译的字节码文件的并行文件系统缓存新的 PYT ...
- python 3.8 新特性_Python 3.8六大新功能
近期,Python 3.8已经发布. 不过别担心,小芯已经为你总结好了Python 3.8中每个新手都应该掌握的6大新功能. IT业日新月异,落后的Python 2将在2020年逐渐被淘汰. 2019 ...
- Python 3 的新特性zz
Python 版本 3,也被称为 Python 3000 或 Py3K(仿效 Microsoft® Windows® 2000 操作系统而命名的昵称)是 Guido van Rossum 通用编程语言 ...
- Python 3.8 即将到来,这是你需要关注的几大新特性
Python 是一门广受好评的编程语言,每个版本的更新都会对开发社区带来一定影响.近日,Python 3.8 已进入 beta 2 版本的测试中,各项新特性已经添加完毕,最终版本预计于今年 10 月发 ...
- Python 2.7终结于7个月后,这是你需要了解的3.X炫酷新特性
从 3.0 到 3.8,Python 3 已经更新了一波又一波,但似乎我们用起来和 2.7 没有太大区别?以前该怎么写 2.7 的代码现在就怎么写,只不过少数表达方式变了而已.在这篇文章中,作者介绍了 ...
- 火了!16岁高中生做的 Python 3.9 八大新特性图
金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI Python3.9,「千呼万唤始出来」. 先来速看下此次发布版本的重点. 新语法特性: PEP 584,为 dict 增加合并运算符. PE ...
最新文章
- java 对象被回收的例子_Java对象的后事处理——垃圾回收(二)
- 一个不错的命令行解析类
- 面部特征点检测的关键技术
- 2020CCPC(长春) - Combination Lock(二分图博弈)
- java二分查找宿舍管理_1、任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:
(1)采用交互工作方式...
- c#中程序以管理员身份运行的三种办法
- ES6中 Map 数据结构
- XX基金 机器学习平台使用情况访谈总结
- ActiveMQ学习(四)——应用程序接口
- commons-logging slf4j log4j 区别
- ASP.NET MVC3 Model验证总结
- Linux无盘工作站的做法
- Verilog写一个对数计算模块Log2(x)
- 创业和创业团队的感想感悟
- 计算机网络换算方法,网络带宽换算
- 黑客全军覆没 书生安全云实战各路高手
- 计算机硬盘解密,如何解除电脑硬盘密码 解除电脑硬盘密码方法【详解】
- 让AI为你制作思维导图 —— ChatMind
- 2.基于51单片机的蓝牙遥控器制作
- R语言命令行写linux,如何在Linux上编写和使用R脚本
热门文章
- 云丰计算机,于云丰-中国科学院大学-UCAS
- yolo v3制作自己的数据_【手把手AI项目】五、自己制作图像VOC数据集--Objection Detection(目标检测)...
- 没有工作经验找it_没有工作经验怎么找工作?
- 桌面整理工具不显示文件夹_iOS14系统所下载的软件图标不显示在桌面怎么办?...
- guava 缓存查询_阿里Java二面难点:Redis缓存穿透、击穿、缓存雪崩方案
- linux boost 1.53编译,boost-1.53源码编译
- java中singleton_Singleton是什么,在Java中如何实现
- android 显示清除缓存
- android 静态链接,android通过C代码实现动态和静态链接
- 基于JAVA+SpringMVC+Mybatis+MYSQL的高校后勤管理系统