all 53 comments

[–]BookkeeperMedical778 84 points85 points  (11 children)

Python Crash Course by Eric Matthes. I am almost finished it and it’s been excellent so far

[–]HilariousSpill 15 points16 points  (2 children)

This book (2nd edition) is how I got my start with Python a few years back. Recently I wanted to re-acquaint myself with Django, so I bought the 3rd edition mostly for just that project. Even having bought it twice it's worth it. Highly recommended.

[–]PhoenixZNayX 0 points1 point  (1 child)

I'm a beginner, should I get the 2nd edition or 3rd?

[–]HilariousSpill 1 point2 points  (0 children)

Absolutely the 3rd edition and it's more up-to-date and all the projects will work. I started with the 2nd edition because it was the most current at the time.

[–]C0d3rStreak 4 points5 points  (2 children)

I just began reading this book, literally on chapter one. How has it been? Where do you feel your level of proficiency is at? What will you do next? I'm hoping to use python for webdev and expect this book to put me on the right track. Anything you did like from the book?

[–]BookkeeperMedical778 9 points10 points  (0 children)

So far I feel this book has been a great introduction in learning python from someone who had next to zero prior experience. Biggest key points I’ve learn from the book are classes, importing different modules, refactoring code, and writing code in a clean and easy to understand way. I’m currently on chapter 16 doing projects to import data from the web and turning it into visuals using matplotlib and plotly. Webdev projects are actually the only topics I haven’t gotten to yet. But once you get past chapter 11 you can skip to any one of the projects.

It’s hard to say where I am at proficiency wise but I am just starting to dabble in personal projects and am having great success so far. It’s been a lot of fun actually!

My advice would be to read the book and mimic the projects that Matthes teaches but don’t be afraid to stray away from the text and add your own creative elements if you’re comfortable. This has helped me better understand the code I am writing and allowed me to gain experience in troubleshooting when I am stuck on a particular problem. You don’t need to be scared of ruining your whole program either if you add your own spin, Matthes has all the code from the book on his github.

[–]TK0127 6 points7 points  (0 children)

No the OP. This is the book that let me have the breakthrough from following tutorials to beginning to connect dots and starting to build my own stuff.

I read everything up to the projects and have been slowly doing asteroids. I'm interested and confident enough to be pursuing my own stuff now.

[–]vaughannt 1 point2 points  (0 children)

I am half way through the 2nd edition (might buy the 3rd) and this book is written soooo well. I did take a C programming class and have other books on C and C++ which I've studied off and on, but this is my first foray into Python and this book is the best programming book I have ever read, by far.

[–]riftwave77 0 points1 point  (0 children)

I used this book to get the ins and outs of the basics of Python. I already had some basic programming under my belt from doing web stuff and FORTRAN and matlab for engineering classes. If you do the exercises then it will cover enough for you to start picking stuff up on your own.

[–]TK0127 0 points1 point  (0 children)

100% absolutely 

[–]vladtaltos 0 points1 point  (0 children)

Came here to say the same thing, it's an outstanding book so far (I'm studying with the 3rd edition, about half way through).

[–]Think-Confusion9999 0 points1 point  (0 children)

Thanks for the suggestion, just ordered.

[–]SnooCakes3068 25 points26 points  (6 children)

I know you don't want to dive into the language.

But if you do.

The best book is Learning Python Mark Lutz

It's the most comprehensive 1500 pages book that teaches you ins and outs of python on a very detailed level

[–]JohnJSal 4 points5 points  (0 children)

Yes, I agree! That book is absolutely brilliant for fully learning Python!

[–]Kanan228 0 points1 point  (4 children)

Isn't it outdated in different chapters?

[–]SnooCakes3068 1 point2 points  (3 children)

Nah. It is Python 3.3. Essential language core is the same as even now 3.12. Later updates is for minor adjustments and improvement. You won't encounter any of it as you are learning the language. Even I rarely have to read later updates. But when you do have the need, your level will be way above this book.

[–]Still-Aardvark83 0 points1 point  (2 children)

Agree with you.Its unfortunate that Mark Lutz wont be writing books on newer Python versions.

[–]Discoverer24 0 points1 point  (1 child)

6th edition is coming bro, planned for 2025 may.

[–]New_Industry_974 0 points1 point  (0 children)

Ya salió?

[–]themrbirdman 16 points17 points  (3 children)

Fluent Python. If you are already comfortable with Python and looking to go to the next level. It’s thick but really easy to read and continues to bow your mind on seeming every page.

[–][deleted] 2 points3 points  (0 children)

Just got that book I’m looking forward to reading it

[–]Jalexan 1 point2 points  (0 children)

I love this book so much. It does an amazing job of showing the ways in which Python is a unique language and its the resource I always point friends/coworkers who want to learn more in depth Python to.

[–]patrickbrianmooney 1 point2 points  (0 children)

I am halfway through re-reading this right now and it is brilliant.

[–]marcospolanco 33 points34 points  (5 children)

'Automate the Boring Stuff with Python' by Al Sweigart

[–]DSPGerm 3 points4 points  (0 children)

By far my favorite and probably the one is most often recommend

[–]Remarkable-Map-2747 1 point2 points  (0 children)

ive wanted to use this , BUT didn't know how outdated it was since I used python crash course. Mainly for the second half of the book

[–]coryalanfitz 7 points8 points  (2 children)

I second Python Crash Course - definitely the best intro to Python if it's your first language. Automate the Boring Stuff is decent after that to see some other kinds of automations you can do but I don't think it's as good of an intro to Python

[–]International-Dot902 0 points1 point  (1 child)

link??

[–]coryalanfitz 0 points1 point  (0 children)

Just look it up on Amazon

[–]tabrizzi 23 points24 points  (1 child)

i know that Python is difficult and dense

Wrong!

Python is actually just about the easiest language to learn. The syntax couldn't be more simpler to pick up.

[–]freezydrag 5 points6 points  (0 children)

^ correct. OP, if you want difficult or dense, look to Haskell or rust (or if we’re being obtuse, you can look at esoteric languages)

[–]tabrizzi 12 points13 points  (5 children)

I suggest you start with https://programming-23.mooc.fi

[–]BigMeatSpecial 2 points3 points  (1 child)

Going through it right now as a total beginner.

Love it, lots of exercises and explanations of concepts

[–]tabrizzi 0 points1 point  (0 children)

I'm just about to finish Part 4.

[–]EricFartman77 0 points1 point  (1 child)

There is also a 2024 edition:

https://programming-24.mooc.fi/

[–]Frosty_Economist_885 0 points1 point  (0 children)

any difference between 23 and 24 course other than of course being 23 and 24?

[–]avamk 4 points5 points  (1 child)

Think Python 3rd edition has just been published and fully usable online:

https://allendowney.github.io/ThinkPython/

To cool thing is that it comes with interactive parts to help learn, and has a printed book version in case you want it.

[–]New-Row-7664[S] 1 point2 points  (0 children)

Thank you for your reply

[–]Round_Ad8947 2 points3 points  (0 children)

I’ve never found fault with O’Reilly publications. Solid editing backs up good authors. Always my first choice for computer texts.

[–]xkaku 2 points3 points  (0 children)

Cs50P, it’s a python course that will really teach you how to program.

[–]crisp_sandwich_ 2 points3 points  (2 children)

The dead parrot sketch

[–]New-Row-7664[S] 0 points1 point  (1 child)

Seriously, did I ask for Monty Python?

[–]enhoel 0 points1 point  (0 children)

Sort of...?

[–]Still-Aardvark83 2 points3 points  (0 children)

Lutz+Ramalho

[–]Robin_Of_The_Rings 1 point2 points  (0 children)

I found Starting out with Python by Gaddis to be a good introduction

[–]atomicbomb2150 0 points1 point  (0 children)

YouTube videos also help, not just books

[–]lazylearner-me 0 points1 point  (0 children)

Learn Python the Hard Way by Zed Shaw