You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: all.html
+52Lines changed: 52 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -197,6 +197,58 @@ <h3>More perspectives on why to use Python</h3>
197
197
system versus statically typed languages, be sure to
198
198
<ahref="http://blogs.perl.org/users/ovid/2010/08/what-to-know-before-debating-type-systems.html">read this thorough explanation of the topic</a>.</p>
199
199
</li>
200
+
</ul>
201
+
<h1>Python 2 or 3?</h1>
202
+
<p>The Python programming language is currently in the midst of a long-term
203
+
transition from version 2 to version 3. New programmers typically have many
204
+
questions about which version they should learn. It's confusing to hear
205
+
that Python 3, which was originally released in 2008, is still not the default
206
+
installation on many operating systems.</p>
207
+
<p>Here's the good news: you can't go wrong starting with either version. While
208
+
there are differences in unicode and syntax, for the most part if you
209
+
start with Python 2 and then learn Python 3 you won't be starting from
210
+
scratch. Likewise, you'll be able to read and write Python 2 code if you
211
+
started with Python 3.</p>
212
+
<p>My personal recommendation for new programmers as of right now is to start
213
+
with Python 3. There are enough <ahref="/best-python-resources.html">great resources</a>
214
+
out there that teach version 3 from the ground up.</p>
215
+
<p>However, if you are interested in DevOps-type work with
216
+
<ahref="/configuration-management.html">configuration management tools</a> such as
217
+
Ansible or Fabric, then you'll have to stick to Python 2 because they have
218
+
yet to upgrade to support Python 3. If you know there are libraries you must
219
+
use in a project, check the
220
+
<ahref="https://python3wos.appspot.com/">Python Walls of Superpowers</a>. If you're
221
+
using Django, there is also a wall specifically for
222
+
<ahref="http://djangowos.com/">Python 3 compatibility of popular Django packages</a>.</p>
223
+
<h3>Python 2 to 3 resources</h3>
224
+
<ul>
225
+
<li>
226
+
<p>The official
227
+
<ahref="https://wiki.python.org/moin/PortingToPy3k/">porting code to Python 3</a>
228
+
page links to resources on porting Python code as well as underlying C
229
+
implementations. There is also a
230
+
<ahref="https://wiki.python.org/moin/PortingToPy3k/BilingualQuickRef">quick reference for writting code with Python 2 and 3 compatibility</a>.</p>
231
+
</li>
232
+
<li>
233
+
<p><ahref="http://nothingbutsnark.svbtle.com/porting-to-python-3-is-like-eating-your-vegetables">Porting to Python 3 is like eating your vegetables</a>
234
+
explains that there are treats in Python 3 that are worth porting for and
235
+
has some tips on making the transition easier.</p>
236
+
</li>
237
+
<li>
238
+
<p><ahref="http://ptgmedia.pearsoncmg.com/imprint_downloads/informit/promotions/python/python2python3.pdf">Moving from Python 2 to Python 3</a>
239
+
is a PDF cheatsheet for porting your Python code.</p>
240
+
</li>
241
+
<li>
242
+
<p><ahref="https://godjango.com/96-django-and-python-3-how-to-setup-pyenv-for-multiple-pythons/">Django and Python 3 How to Setup pyenv for Multiple Pythons</a>
243
+
is a screencast showing how to run both Python 2 and 3 for different
244
+
projects using pyenv.</p>
245
+
</li>
246
+
<li>
247
+
<p><ahref="http://blog.scrapinghub.com/2015/08/19/scrapy-on-the-road-to-python-3-support/">Scrapy on the road to Python 3 support</a>
248
+
explains from the perspective of a widely used Python project what their
249
+
plan is for supporting Python 3 and why it has taken so long to make it
250
+
happen.</p>
251
+
</li>
200
252
</ul>
201
253
<h1>Best Python Resources</h1>
202
254
<p>The Python community is amazing at sharing detailed resources and helping
0 commit comments