|
1 | 1 | <h2 id="what-is-python-3" class="caps"><span>What is Python 3?</span></h2> |
2 | 2 |
|
3 | | -<p>Short version: Although most Python code is written for Python |
| 3 | +<h3>Short summary</h3> |
| 4 | + |
| 5 | +<p>Although most Python code is currently written for Python |
4 | 6 | 2.x, Python 3.x is the present and future of the language.</p> |
5 | 7 |
|
6 | | -<p>At the time of writing (Sept 28, 2011), the final 2.7 release |
7 | | -is out, with a statement of extended support for this end-of-life |
8 | | -release. The 2.x branch will see no new major releases after that. |
9 | | -3.x is under active development and has already seen stable |
10 | | -releases, such as the recent 3.2. This means that all recent |
11 | | -standard library improvements, for example, are only available |
12 | | -in Python 3.x.</p> |
| 8 | +<p>Python 2.7.3 was released in April 2012. |
| 9 | +The 2.x branch will have no further major releases, |
| 10 | +though this end-of-life release will have an extended period of bug |
| 11 | +and security fixes. |
| 12 | + |
| 13 | +<p>Python 3.x continues to be actively developed and has already seen stable |
| 14 | +releases. The most recent is Python 3.3, released in September |
| 15 | +2012. This means that all recent standard library improvements, for |
| 16 | +example, are only available in Python 3.x.</p> |
| 17 | + |
| 18 | +<h3>Detailed discussion</h3> |
13 | 19 |
|
14 | 20 | <p>Guido van Rossum (the original creator of the Python language), |
15 | | -in conjunction with other python-core developers decided to |
16 | | -clean up Python 2.x properly, with less regard for backwards |
17 | | -compatibility than is the case for new releases in the 2.x range. |
18 | | -The most drastic improvement is the better unicode support (with |
19 | | -all text strings being unicode by default) as well as saner |
| 21 | +in conjunction with other python-core developers decided to use Python 3.x to |
| 22 | +clean up Python 2.x. Python 2.x releases were careful to preserve backwards |
| 23 | +compatibility with older versions, but Python 3.x was freed of this requirement. |
| 24 | +The most drastic improvement is better Unicode support (with |
| 25 | +all text strings being Unicode by default) as well as saner |
20 | 26 | bytes/unicode separation.</p> |
21 | 27 |
|
22 | | -<p>Besides, several aspects of the core language (such as print |
23 | | -and exec being statements, integers using floor division) have been |
| 28 | +<p>Several other aspects of the core language (such as <code>print</code> |
| 29 | +and <code>exec</code> being statements, integers using floor division) were |
24 | 30 | adjusted to be easier for newcomers to learn and to be more consistent |
25 | 31 | with the rest of the language, and old cruft has been removed (for |
26 | | -example, all classes are now new-style, range() returns a memory |
27 | | -efficient iterable, not a list as in 2.x).</p> |
| 32 | +example, all classes are now new-style, <code>range()</code> returns a memory |
| 33 | +efficient iterable and not a list as in 2.x).</p> |
28 | 34 |
|
29 | 35 | <p>The <a href="http://docs.python.org/py3k/whatsnew/3.0.html"> |
30 | 36 | What's New in Python 3.0</a> document provides a good overview of the |
31 | 37 | major language changes and likely sources of incompatibility with |
32 | 38 | existing Python 2.x code.</p> |
33 | 39 |
|
| 40 | +<p>The <a href="http://docs.python.org/dev/whatsnew/3.1.html">What's |
| 41 | +New in Python 3.1</a>, |
| 42 | +<a href="http://docs.python.org/dev/whatsnew/3.2.html">Python 3.2</a>, |
| 43 | +and <a href="http://docs.python.org/dev/whatsnew/3.3.html">Python 3.3</a> |
| 44 | +documents describes the new features added to each Python 3 release.</p> |
| 45 | + |
34 | 46 | <p>Cribbed from <a href="http://wiki.python.org/moin/Python2orPython3" |
35 | 47 | target="_blank">Python2orPython3</a> on the Python wiki.</p> |
36 | 48 |
|
0 commit comments