

Ask HN: easy resources for learning Python? - geuis

I'm wondering if the community can point me to some easy resources to getting started with Python, starting from the basics of basics up to advanced usage.<p>I had an interview a couple weeks ago with a kickass startup company, who's owner frequents HN, for a front-end engineer position. Unfortunately, it turned out the role really needed someone with Python experience in addition to front-end skills. Needless to say, I was passed over but the interview was great and it was really cool to meet with their team.<p>So, what's the best way for me to transition from a creaky PHP history to Python? I have some ideas for my own startup(s), I'm sick of working where I'm at, but I don't want to fallback on PHP to launch a new service.
======
mkuhn
I can recommend "Think Python: How to think like a Computer Scientist". It's
free but can also be purchased (at least soon). It really starts with the
basics but if you already know those you can skip them.
<http://www.greenteapress.com/thinkpython/thinkpython.html>

Also I can recommend Dive Into Python: <http://www.diveintopython.org/>

------
whatusername
<http://news.ycombinator.com/item?id=378424>
<http://news.ycombinator.com/item?id=439822>
<http://news.ycombinator.com/item?id=121779>

Also what mkuhn said - ThinkPython and Dive into Python are both great books.

------
quantumhobbit
Pick a project and just start coding. The Python documentation is good enough
that you should be able to teach yourself as you go. A coding contest site
like Project Euler is a good source of quick problems to hone your skills on.
Whenever you run into a tricky situation run a google search on it and you'll
be surprised how often the solution is built into python.

~~~
godDLL
That's exactly my experience. "Dive into Python" made my head spin,
confusingly enough (it is a great book). I did a small project (a deployment
system that compiles HTML from a database of Markdown text using Jinja2
templating), coded it up real fast (I was amazed), refactored the thing to
read easily and extend well, and _just sat back_. Just like that. I all made
so much sense, while being so concise, I didn't realize it could be so elegant
to write something, something readable, something you do not have to decipher
when you get back to it later. I am _absolutely_ sold.

So here's my two cents -- pick a project, a small one, not necessarily
something you're going to sell or even release, some repetitive task you have
to perform, for instance, and automate that with Python, bring some structure
to it and see how that goes. You might be not as impressionable, but there is
definitely immediate gains with this approach (besides scratching your own
itch as with my example).

------
manvsmachine
I addition to books, I recommend getting an account with Google App Engine,
which uses Python as its de facto language IIRC. You might not ever use the
platform itself again, but it would provide a sandbox to play around in
(assuming you don't already have a server of your own).

------
vladimir
I think Python documentation is a great resource for learning it.

------
peterlai
Whenever I start with a new language, I read an O'Reilly book from cover to
cover. For Python, this is the one I chose: "Learning Python" by Mark Lutz.

------
known
<http://www.cetus-links.org/oo_python.html> is a good source

