python3.0地新特性

python3.0地新特性

ID:34201303

大小:113.41 KB

页数:7页

时间:2019-03-04

python3.0地新特性_第1页
python3.0地新特性_第2页
python3.0地新特性_第3页
python3.0地新特性_第4页
python3.0地新特性_第5页
资源描述:

《python3.0地新特性》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实用标准python3.0的新特性这篇文章主要介绍了相比于python2.6,python3.0的新特性。更详细的介绍请参见python3.0的文档。CommonStumblingBlocks本段简单的列出容易使人出错的变动(初学者应该注意)。·print语句被print()函数取代了,可以使用关键字参数来替代老的print特殊语法。例如:Old:print"Theansweris",2*2New:print("Theansweris",2*2)Old:printx,                        

2、#使用逗号结尾禁止换行New:print(x,end="")            #使用空格代替换行Old:print                          #输出新行New:print()                        #输出新行Old:print>>sys.stderr,"fatalerror"New:print("fatalerror",file=sys.stderr)Old:print(x,y)                    #输出repr((x,y))New:prin

3、t((x,y))                  #不同于print(x,y)!你可以自定义输出项之间的分隔符:  print("Thereare<",2**32,">possibilities!",sep="")输出结果是:  Thereare<4294967296>possibilities!注意:精彩文档实用标准print()函数不支持老print语句的"软空格"特性,例如,在python2.x中,print"A","B"会输出"AB",而python3.0中,print("A","B")会

4、输出"AB"使用 2to3 源码转换工具时,所有的print语句被自动转换成print()函数调用,对大项目,这是无需争论的。·python3.0使用字符串(strings)和bytes代替Unicode字符串和8位字符串,这意味着几乎所有使用Unicode编码和二进制数据的代码都要改动。这个改动很不错,在2.x的世界里,无数的bug都是因为编码问题。·map()和filter()返回迭代器(iterators)·dict方法keys(),items(),values()返回视图(同样是迭代器)而不是列表(

5、list)·内建的sorted()方法和list.sort()方法不再接受表示比较函数的cmp参数,使用key参数代替。·1/2返回浮点数,使用1//2能得到整数。·repr()函数对于long整数不再包含拖尾的L,所以不加判断的去除最后一个字符会导致去掉一个有用的数字。StringandBytes·现在只有一种字符串:str,它的行为和实现都很像2.x的unicode串。·basestring超类已经去掉了,2to3 工具会把每个出现的basestring替换成str。·PEP3137:新类型bytes,用来表示

6、二进制数据和编码文本,str和bytes不能混合,需要时,必须进行显示的转换,转换方法是str.encode()(str->bytes)和bytes.decode()(bytes->str).·在原始字符串(rawstrings)中所有反斜线都按字面量解释,不再特殊处理Unicode转义字符。·PEP3112:bytes字面量,例如b"abc",创建bytes实例。·PEP3120:默认源文件编码为UTF-8精彩文档实用标准·PEP3131:可以使用非ASCII标识符(然而,除了注释中贡献者的名字之外,标准库仍然只

7、包含ASCII)·PEP3116:新的IO实现,API几乎100%向后兼容,二进制文件使用bytes代替strings·去除了StringIO和cStringIO模块,取而代之的是io.StringIO或者io.BytesIOPEP3101:字符串格式化的新方法·str.format方法(原文提到替代了%操作符,实际上,format方法和%的用法差别很大,各有所长)。PEP3106:修补了dict的keys(),items(),values()方法·删除了dict.iterkeys(),dict.itervalue

8、s()和dict.iteritems()·dict.keys(),dict.values()和dict.items()返回dict相关数据的引用PEP3107:函数注解(FunctionAnnotations)·注解函数参数和返回值的标准化方法ExceptionStuff·PEP352:异常类必须继承自BaseException,它异常结构的基类。·移除了S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。