科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道应用软件抢“鲜”体验Python 3.0

抢“鲜”体验Python 3.0

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

2007年8月31日,Python 3000的最新版本Py3.0终于释出了第一个alpha版本。虽然Py3.0的final版本要到08年8月才会释出,但我们仍然可以从a1版本看到很多Py3.0的新特性,现在我们就来体验一下。

作者:恋花蝶 来源:Csdn博客 2007年9月13日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

13)支持class decorator。用法与函数decorator一样:

>>> def foo(cls_a):

def print_func(self):

print('Hello, world!')

cls_a.print = print_func

return cls_a

>>> @foo

class C(object):

pass

>>> C().print()

Hello, world! 

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字面量的方法如下:

>>> b = b'china'

>>> type(b)

str对象和bytes对象可以使用.encode() (str -> bytes) or .decode() (bytes -> str)方法相互转化。

>>> s = b.decode()

>>> s

'china'

>>> b1 = s.encode()

>>> b1

b'china'

3)dict的.keys()、.items和.values()方法返回迭代器,而之前的iterkeys()等函数都被废弃。同时去掉的还有dict.has_key(),用in替代它吧!

面向对象

1)引入抽象基类(Abstraact Base Classes,ABCs)。

2)容器类和迭代器类被ABCs化,所以cellections模块里的类型比Py2.5多了很多。

>>> import collections

>>> print('\n'.join(dir(collections)))

Callable

Container

Hashable

ItemsView

Iterable

Iterator

KeysView

Mapping

MappingView

MutableMapping

MutableSequence

MutableSet

NamedTuple

Sequence

Set

Sized

ValuesView

__all__

__builtins__

__doc__

__file__

__name__

_abcoll

_itemgetter

_sys

defaultdict

deque

另外,数值类型也被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中:

>>> try:

...     raise NotImplementedError('Error')

... except NotImplementedError, error:

...     print error.message

...

Error

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章