Python 2/3 差异点

Python 2/3 差异点

内容python2python3
print关键字函数
编码默认ASCII默认utf-8(unicode)
除法结果是int整除结果是浮点数,整除是 //

字符串问题

  • 字节串是给机器看的
  • unicode是给人看的
  • python2中字符串两个类型:unicode-文本字符串和str-字节序列
  • python3中 str-字符串,byte-字节序列
    在这里插入图片描述

Python3 改进

  • 类型注解(type hint),提示
>>> def hello(name:str) -> str:
		...     return "hello " + name
  • 优化super()方法直接调用父类函数
    super().hello()
  • 高级解包操作。
    a,b,*rest = range(10)
  • 限定关键字参数
  • Python3重新抛出异常不会丢失栈信息
  • 一切返回迭代器 range,zip, map,dict.values.等
  • 生成pyc文件放到__pycache__中

Python3 新增

  • yield from 链接子生成器
  • asyncio内置库,async/await 原生协程支持异步编程
  • 新的内置库 enum,mock,asysncio,ipaddress等

Python2/3工具

  • six 帮助编写兼容2/3的代码
  • 2to3等工具转换代码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值