Looking for a Python book

1,593 Views | 16 Replies | Last: 8 yr ago by Caesar4
Star Wars Memes Only
How long do you want to ignore this user?
I picked up R a while back but was pretty frustrated with the experience. Since R is a language mainly used for data science, all of the resources I found were oriented towards people looking to use R as a tool to manipulate data as quickly as possible. However, this approach did not do much to teach you about R as a programming language -- it taught it as basically a tool with a list of commands you could use to manipulate data.

I generally prefer to learn things from the ground up. While I could use R to get things done, I didn't feel like I really understood what was going on under the hood. This left me pretty frustrated. For instance, initially I didn't understand what the plus sign meant in R. We just used it without explanation. Initially that was fine. It did what you would expect from basic math and other programming languages. In other words it was essentially a function that took two numerical values and returned their arithmetic sum. Then we started using a library called ggplot2. All of a sudden the plus sign was being used to concatenate various graphical elements which ultimately affected the way your graph came out looking. I had no idea what was going on.

I found a book called the Art of R Programming that treated and taught R as a programming language instead of as a data manipulation tool, and that helped me feel like I understood R better quite a bit. I'm now planning on moving on to Python. I understand that Python is much more of a general-purpose language than R is, but I want to avoid the same pitfalls I had with R. So could anyone recommend a book that teaches Python from the ground up?

Thanks.
OCEN99
How long do you want to ignore this user?
I've heard good stuff about Learn Python the Hard Way, though it may be more aimed at completely new programmers than what you're looking for.
JDCAG (NOT Colin)
How long do you want to ignore this user?
Have you looked online for any resources? Usually, you can find more in depth, up to date content online, even for free, than I find you get with books these days.
AGSPORTSFAN07
How long do you want to ignore this user?
I used Python Programming for the absolute beginner. It's pretty good.

ntxVol
How long do you want to ignore this user?
JDCAG (NOT Colin) said:

Have you looked online for any resources? Usually, you can find more in depth, up to date content online, even for free, than I find you get with books these days.
I agree with this, I would start with python.org and go from there. Looks like there is a complete language reference there as well.
chigger
How long do you want to ignore this user?
Learn Python the Hard Way
80085
How long do you want to ignore this user?
Half price books is practically giving away python books. It's nice to have something tangible to throw across the room while working with arrays right before switching back to a big boy programming language
G Martin 87
How long do you want to ignore this user?
I've heard good things about Learn Python the Hard Way, too. It's in my reading list.

This R website might be helpful if you're still needing resources. Jamey Johnston (MS in analytics at A&M) presented at SQL Saturday in Baton Rouge a couple of weekends ago on R. http://statcowboy.com Also see http://r-bloggers.com
Star Wars Memes Only
How long do you want to ignore this user?
Thank you all for the replies.

I'm a little hesitant to buy Python the Hard Way. From what I've heard/read about the book it has a pedagogical style of "type this in, see what happens, and look things up you don't understand on the internet." That's probably true to how people actually code, but it's not what I'm looking for in a book. I'd prefer a book that is self-contained, and one who's goal is to help you understand the language at a somewhat deeper level than just getting you up to speed on how to code. Am I misinformed about this particular book in you guys' opinion?

I'm open to suggestions about online resources that you guys think are self-contained and actually explain what some of the more confusing parts of the language are actually doing rather than just telling you how to accomplish some end goal. That said, my access to the internet is somewhat limited at work. I also like things in the printed form. It allows me to write notes, highlight, etc. etc. For these reasons, I'd probably still prefer to go with a book.

I'll look into Python Programming for the Absolute Beginner. I have not come across that before.

G Martin, thank you for the R links. In fact, thank you all for your comments and suggestions.
SlackerAg
How long do you want to ignore this user?
I really like the O'Reilly books:

Learning Python

Python In A Nutshell
MGS
How long do you want to ignore this user?
robertf03 said:

Half price books is practically giving away python books. It's nice to have something tangible to throw across the room while working with arrays right before switching back to a big boy programming language
If you learned that Python has arrays, you definitely should find some new books.
80085
How long do you want to ignore this user?
Hah. Yeah I couldn't find that chapter. The indentations also made me crazy. I did a quick serial comm project to interrogate some car Ecu stuff in python to see what the fuss is all about since it seems to be more popular than java and c these days. That was torture. Maybe I'm set in my ways, but c and java are already available for everything.
logs10
How long do you want to ignore this user?
NumPy does have arrays, and it's an integral library to base Python.. So the argument could be made.
logs10
How long do you want to ignore this user?
If you are looking for bare bones explanation of some of the inner workings of the Python language, I think you should look no further than the source code. Yes, it will probably be painful, but that is assuredly the surefire way to get to what you are looking for.
ntxVol
How long do you want to ignore this user?
robertf03 said:

Hah. Yeah I couldn't find that chapter. The indentations also made me crazy. I did a quick serial comm project to interrogate some car Ecu stuff in python to see what the fuss is all about since it seems to be more popular than java and c these days. That was torture. Maybe I'm set in my ways, but c and java are already available for everything.
I am the same, I don't really get the appeal of Python. It has become so popular I guess I am going to have to bite the bullet and learn a more about it as well.
AGSPORTSFAN07
How long do you want to ignore this user?
ntxVOL said:

robertf03 said:

Hah. Yeah I couldn't find that chapter. The indentations also made me crazy. I did a quick serial comm project to interrogate some car Ecu stuff in python to see what the fuss is all about since it seems to be more popular than java and c these days. That was torture. Maybe I'm set in my ways, but c and java are already available for everything.
I am the same, I don't really get the appeal of Python. It has become so popular I guess I am going to have to bite the bullet and learn a more about it as well.
It depends on what you need it for. It's great for physics and data analysis. It's also great for any type of automation.
80085
How long do you want to ignore this user?
I hear that a lot, and even a quick google search says that, but I've never seen a description how it's any better at any of those tasks. I figure physics calculations often need to be done in near real time , automation usually goes on some limited resource processor also in near real time, and data analysis requires anything with a odbc library. I'll try to keep an open mind about it, so what does it offer?
Caesar4
How long do you want to ignore this user?
How about Dr. Chuck's free python book and accompanying free lecture videos?

https://www.py4e.com/
Refresh
Page 1 of 1
 
×
subscribe Verify your student status
See Subscription Benefits
Trial only available to users who have never subscribed or participated in a previous trial.