tooting my own horn, http://corepython.com gets good reviews too. however, it does target existing programmers who want to learn Python as quickly and as comprehensively as possible. it's not a good book if you're a beginner to programming or are looking for a pure reference like PER or Nutshell.
if you really need a learning disc, a subset of my book and the slides i use to teach with can be found in the Python Fundamentals DVD that i authored as well, however it is *not* a "showmedo" video of Python hacking. rather, it's a subset of my lectures that come from my Python courses. i'm also book-agnostic but am concerned that readers get the right book for their needs, so i would be glad to recommend other books outside of my own. cheers, --wesley On Wed, Feb 15, 2012 at 1:28 AM, Alan Gauld <alan.ga...@btinternet.com>wrote: > On 15/02/12 02:16, Tamar Osher wrote: > > I am hoping to find a professionally designed, serious, university level >> book (with exercises, with a learning disc, and answers, and an >> elaborately helpful website) that will carefully and surely guide me >> through learning computer programming with Python version 3. I want to >> be lifted up from a baby-level to an intermediate level. >> > > I don;t know about a CD etc but its a good book: > > Programming in Python 3 by Summerfield. > > And as a general intermediate book I like > > Programming Python by Lutz (not in v3 yet but as an > intermediate programmer that won't make any difference > to you, your past worrying about that) > > > I don't want to spend a lot of time casually browsing through the >> websites, trying out different things. >> > > A pity, its the best way to learn. > > > > I am in a rush to become a Python expert, I need a job! > > Go write lots of code. > > > I enjoy computer programming. Python is my only programming language. >> > > To get and keep a job you will need more than one. > As a minimum you will probably need SQL and nowadays > at least some JavaScript will be useful. And an OS shell > language would be useful too. As a minimum. > > > A note to Python Teachers: >> I downloaded Python version 3.2.2 on my computer. Most Python books and >> tutorials are several years old, for older, outdated versions. >> > > Yes, because to produce them takes a lot of time. And most online > tutorials are done by volunteers with another lifew - the one that earns > them money. So they can't write tutorials as fast as the language evolves. > Or they only have time to write a tutorial once, not to update it. The good > news is that Python is fairly stable and most things still work even from > version 1. > > > learning Python got off to a slow start: Initially, I had spent over a >> week trying to figure out the (version 2) tutorial for "Hello, World!", >> and the print/print() situation. >> > > Really? If you had asked here. or even read the v3 documentation you would > have had print() explained in great detail. > > > Today, there is a huge and growing number of online Python tutorials and >> websites. My request is that the list of recommended tutorials be >> revised and updated. There is a sizable amount of learning and tutorial >> info at Python.org that seems to be valuable historical information >> rather than urgent-read-now-tutorials for new beginning programmers. >> > > Remember that many - most? - professional Python programmers are still > using Python v2 not v3. There are still some critical third party libraries > to be ported to v3. It is getting better but we are not there yet. At the > very least they are maintaining v2 code. I use both versions but only about > 20-25% of my time is spent in v3. v2 is not only of "historical" interest, > its what the majority of Python code is written in, even today. > > > instance, there are some very well written Python tutorials from years >> 2009, 2007, and 2005. An idea: Delete all references to tutorials that >> are not version 2 or 3. >> > > v1 Python is possibly a valid point. But most v1 tutorials are still valid > in v2, there was much less change from v1 to v2. > > > And clearly label all the well-written version 2 tutorials, as >> > > being outdated version 2. > > Who determines what is "well written"? And if a tutorial is based on v2.7 > is it really outdated? > > > For me, learning computer programming is easy, so far. >> > > That's good, so you will have realized that the language, and especially > the language version is largely irrelevant. What is important is structure, > algorithm, data and I/O. > > What is difficult is ...learning how to manage the >> >> difference between version 3.2.2 and older versions. >> > > No, that's trivially easy. If you think that's difficult then you haven't > begun to understand computer science. I strongly suggest you search for and > read the classic paper by Fred Brooks called "No silver bullet" > There he describes the "essential" problems at the heart of programming > and why there are no easy answers. Languages included. > > > For someone new to programming, the difference between version 3.2.2 >> > > and the older versions is enormous. > > I agree and thats why I still tend to recommend a newcomer stick to v2 for > now. There are more tutorials and they are more mature and there are more > practitioners using it than v3. All of which makes it easier to get answers > for v2 than for v3. The situation is changing but v3 is not mainstream yet. > > > please let me know. I want to quickly move myself from a baby-level to a >> capable, intermediate-level Python programmer. >> > > It depends on your expectations but the quickest way to get competent in > any programming language is through use. Once you have written several tens > of thousands of lines of code you will be well on your way. But that will > take quite a few months and that may not align with your expectations. > > Reading books will teach you the theory (but for that you would be better > off reading books like The Structure and Interpretation of Computer > Programs (aka SICP) by Sussman and How to Design Programs (HTDP). But both > are in Scheme not Python. But they will transform your understanding of how > programs work. And if you really want to understand the theory find books > on relational data theory, state automata theory, algorithm development, > and Lambda calculus. > > Then finally you might want to look at some of the books on system design, > especially as you get involved in bigger projects. Its hard to organise > code over several hundred files unless you have an underlying architecture > and that needs to be based on good design principles more than good coding > principles. > > But none of that is essential to becoming a working programmer, just get > out and write lots of code for real world problems. > > > -- > Alan G > Author of the Learn to Program web site > http://www.alan-g.me.uk/ -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "Core Python", Prentice Hall, (c)2007,2001 "Python Fundamentals", Prentice Hall, (c)2009 http://corepython.com wesley.chun : wescpy-gmail.com : @wescpy/+wescpy python training and technical consulting cyberweb.consulting : silicon valley, ca http://cyberwebconsulting.com
_______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor