抢“鲜”体验Python 3.0
2007-09-08 12:53:29 来源:WEB开发网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('
'.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化。关于这两点。
更多精彩
赞助商链接