python2.x与python3.x的一些简单区别

(1)去除print语句,加入print()函数实现相同的功能。同样的还有 exec语句,已经改为exec()函数 

2.X: print "The answer is", 2*2  

3.X: print("The answer is", 2*2)       

2.X: print x,                              # 使用逗号结尾禁止换行       

3.X: print(x, end=" ")                     # 使用空格代替换行       

2.X: print                                 # 输出新行       

3.X: print()                               # 输出新行      

2.X: print >>sys.stderr, "fatal error"       

3.X: print("fatal error", file=sys.stderr)       

2.X: print (x, y)                          # 输出repr((x, y))      

3.X: print((x, y))                         # 不同于print(x, y)!


(2)迭代器的next()方法改名为__next__(),并增加内置函数next(),用以调用迭代器的__next__()方法 

(3)新的super(),可以不再给super()传参数, 
    >>> class C(object): 
          def __init__(self, a): 
             print('C', a) 
    >>> class D(C): 
          def __init(self, a): 
             super().__init__(a) # 无参数调用super() 
    >>> D(8) 
    C 8 
    <__main__.D object at 0x00D7ED90> 


我也是目前只用到了以上这些,平时主要还是使用的python2.7,只是有些资料中使用的是python3.5,所以整理一下以备后用。

原创作者链接为:http://www.cnblogs.com/codingmylife/archive/2010/06/06/1752807.html

你可能感兴趣的:(python)