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新特性(部分)相关推荐

  1. python 3.9特性,开发者应该知道的Python 3.9新特性

    导读:Python 3.9来了,有哪些新特性值得学,值得用? Python 2.9(5.10.2020)已经发布了一段时间,最后一个Alpha版(3.9.0a5)近期发布了测试版.开发者应该看新版有哪 ...

  2. python 3.8 新特性 video_1分钟了解:Python3.8 新特性:仅位置参数

    这是Python3.8新特性的第二篇,第一篇介绍了赋值表达式,这篇文章花几分钟了解什么是仅位置参数(Positional-Only Arguments) 插播一条:我自己是一名从事了多年开发的Pyth ...

  3. python 3.9 新特性 简介

    目录 字典"并集"运算符 类型提示的改善 装饰器语法更加灵活 classmethod 支持包装其他描述器 新增模块.函数.方法 参考资料 字典"并集"运算符 & ...

  4. Python 3.8 新特性全面解读

    开发四年只会写业务代码,分布式高并发都不会还做程序员?   本文详细介绍 Python 3.8 中的新功能,以及和与 3.7 相比的一些不同点. 新功能 编译的字节码文件的并行文件系统缓存新的 PYT ...

  5. python 3.8 新特性_Python 3.8六大新功能

    近期,Python 3.8已经发布. 不过别担心,小芯已经为你总结好了Python 3.8中每个新手都应该掌握的6大新功能. IT业日新月异,落后的Python 2将在2020年逐渐被淘汰. 2019 ...

  6. Python 3 的新特性zz

    Python 版本 3,也被称为 Python 3000 或 Py3K(仿效 Microsoft® Windows® 2000 操作系统而命名的昵称)是 Guido van Rossum 通用编程语言 ...

  7. Python 3.8 即将到来,这是你需要关注的几大新特性

    Python 是一门广受好评的编程语言,每个版本的更新都会对开发社区带来一定影响.近日,Python 3.8 已进入 beta 2 版本的测试中,各项新特性已经添加完毕,最终版本预计于今年 10 月发 ...

  8. Python 2.7终结于7个月后,这是你需要了解的3.X炫酷新特性

    从 3.0 到 3.8,Python 3 已经更新了一波又一波,但似乎我们用起来和 2.7 没有太大区别?以前该怎么写 2.7 的代码现在就怎么写,只不过少数表达方式变了而已.在这篇文章中,作者介绍了 ...

  9. 火了!16岁高中生做的 Python 3.9 八大新特性图

    金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI Python3.9,「千呼万唤始出来」. 先来速看下此次发布版本的重点. 新语法特性: PEP 584,为 dict 增加合并运算符. PE ...

最新文章

  1. java 对象被回收的例子_Java对象的后事处理——垃圾回收(二)
  2. 一个不错的命令行解析类
  3. 面部特征点检测的关键技术
  4. 2020CCPC(长春) - Combination Lock(二分图博弈)
  5. java二分查找宿舍管理_1、任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求: (1)采用交互工作方式...
  6. c#中程序以管理员身份运行的三种办法
  7. ES6中 Map 数据结构
  8. XX基金 机器学习平台使用情况访谈总结
  9. ActiveMQ学习(四)——应用程序接口
  10. commons-logging slf4j log4j 区别
  11. ASP.NET MVC3 Model验证总结
  12. Linux无盘工作站的做法
  13. Verilog写一个对数计算模块Log2(x)
  14. 创业和创业团队的感想感悟
  15. 计算机网络换算方法,网络带宽换算
  16. 黑客全军覆没 书生安全云实战各路高手
  17. 计算机硬盘解密,如何解除电脑硬盘密码 解除电脑硬盘密码方法【详解】
  18. 让AI为你制作思维导图 —— ChatMind
  19. 2.基于51单片机的蓝牙遥控器制作
  20. R语言命令行写linux,如何在Linux上编写和使用R脚本

热门文章

  1. 云丰计算机,于云丰-中国科学院大学-UCAS
  2. yolo v3制作自己的数据_【手把手AI项目】五、自己制作图像VOC数据集--Objection Detection(目标检测)...
  3. 没有工作经验找it_没有工作经验怎么找工作?
  4. 桌面整理工具不显示文件夹_iOS14系统所下载的软件图标不显示在桌面怎么办?...
  5. guava 缓存查询_阿里Java二面难点:Redis缓存穿透、击穿、缓存雪崩方案
  6. linux boost 1.53编译,boost-1.53源码编译
  7. java中singleton_Singleton是什么,在Java中如何实现
  8. android 显示清除缓存
  9. android 静态链接,android通过C代码实现动态和静态链接
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的高校后勤管理系统