zoukankan      html  css  js  c++  java
  • test

    In summary : Python 2.x is legacy, Python 3.x is the present and future of the language
    Python 3.0 was released in 2008. The final 2.x version 2.7 release came out in mid-2010, with a statement of
    extended support for this end-of-life release. The 2.x branch will see no new major releases after that. 3.x is
    under active development and has already seen over five years of stable releases, including version 3.3 in 2012,
    3.4 in 2014, and 3.5 in 2015. This means that all recent standard library improvements, for example, are only
    available by default in Python 3.x.
    Guido van Rossum (the original creator of the Python language) decided to clean up Python 2.x properly, with less regard for backwards compatibility than is the case for new releases in the 2.x range. The most drastic improvement is the better Unicode support (with all text strings being Unicode by default) as well as saner bytes/Unicode separation. Besides, several aspects of the core language (such as print and exec being statements, integers using floor division) have been adjusted to be easier for newcomers to learn and to be more consistent with the rest of the language, and old cruft has been removed (for example, all classes are now new-style, "range()" returns a memory efficient iterable, not a list as in 2.x). 

    py2与3的详细区别

    PRINT IS A FUNCTION
    The statement has been replaced with a print() function, with keyword arguments to replace most of the special syntax of the old statement (PEP 3105). Examples: 
    1
    2
    3
    4
    5
    6
    7
    Old: print "The answer is"2*2 New: print("The answer is"2*2)
    Old: print x, # Trailing comma suppresses newline New: print(x, end=" ") # Appends a space instead of a newline
    Old: print # Prints a newline
    New: print() # You must call the function!
    Old: print >>sys.stderr, "fatal error" New: print("fatal error"file=sys.stderr)
    Old: print (x, y) # prints repr((x, y))
    New: print((x, y)) # Not the same as print(x, y)!
    You can also customize the separator between items, e.g.: 
    1
    print("There are <"2**32"> possibilities!", sep="")
    ALL IS UNICODE NOW 从此不再为讨厌的字符编码而烦恼
      还可以这样玩: (A,*REST,B)=RANGE(5)
    1
    2
    3
    4
    <strong>>>> a,*rest,b = range(5)
    >>> a,rest,b
    (0, [123], 4)
    </strong>
       某些库改名了
     
    Old Name
    New Name
    _winreg
    winreg
    ConfigParser
    configparser
    copy_reg
    copyreg
    Queue
    queue
    SocketServer
    socketserver
    markupbase
    _markupbase
    repr
    reprlib
    test.test_support
    test.support
      
    还有谁不支持PYTHON3?
    One popular module that don't yet support Python 3 is Twisted (for networking and other applications). Most
    actively maintained libraries have people working on 3.x support. For some libraries, it's more of a priority than
    others: Twisted, for example, is mostly focused on production servers, where supporting older versions of
    Python is important, let alone supporting a new version that includes major changes to the language. (Twisted is
    a prime example of a major package where porting to 3.x is far from trivial 
    View Code
  • 相关阅读:
    flutter-常见的基础组件(一)
    flutter-dart语言初识
    从零开始配置安装Flutter开发环境
    vue路由vue-router
    css秘密花园一
    mvvm实现一个简单的vue
    js常见的设计模式一
    es6 generator函数的异步编程
    es6 async和await
    模块--random
  • 原文地址:https://www.cnblogs.com/JIM-FAN/p/9333724.html
Copyright © 2011-2022 走看看