扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:恋花蝶 来源:Csdn博客 2007年9月13日
关键字:
13)支持class decorator。用法与函数decorator一样:
|
class decorator可以用来玩玩狸猫换太子的大把戏。
14)raise语句的语法改变。
字符串和字节串
1)Py3.0去除了unicode类型,现在字符串只有str一种类型,但它跟2.x版本的unicode几乎一样。
2)关于字节串。
数据类型
1)Py3.0去除了long类型,现在只有一种整型——int,但它的行为就像2.x版本的long。
2)新增了bytes类型,对应于2.x版本的八位串,定义一个bytes字面量的方法如下:
|
str对象和bytes对象可以使用.encode() (str -> bytes) or .decode() (bytes -> str)方法相互转化。
|
3)dict的.keys()、.items和.values()方法返回迭代器,而之前的iterkeys()等函数都被废弃。同时去掉的还有dict.has_key(),用in替代它吧!
面向对象
1)引入抽象基类(Abstraact Base Classes,ABCs)。
2)容器类和迭代器类被ABCs化,所以cellections模块里的类型比Py2.5多了很多。
|
另外,数值类型也被ABCs化。关于这两点。
3)迭代器的next()方法改名为__next__(),并增加内置函数next(),用以调用迭代器的__next__()方法
4)增加了@abstractmethod 和 @abstractproperty两个decorator,编写抽象方法(属性)更加方便。
异常
1)所以异常都从BaseException继承,并删除了StardardError。
2)去除了异常类的序列行为和.message属性。
3)用raise Exception(args) 代替 raise Exception, args语法。
4)捕获异常的语法改变,引入了as关键字来标识异常实例,在Py2.5中:
|
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者