I sincerely hope that this version is better than the first edition, although anything short of a random re-arrangement of pages would serve as an improvement. The first edition actually delayed my initial use of Python by about a year and a half. I had heard wonderful things about the language so I figured, "Ah, an O'Reilly book!" Big mistake.
Endless bits about immutability, without hints as to why I ought to care. I can appreciate the use of the interactive prompt now, but to start with it seems... s
Endless bits about immutability, without hints as to why I ought to care. I can appreciate the use of the interactive prompt now, but to start with it seems... strange.
The thing about mutability in Python is that it can bite you in the neck if you assume the variable passing and assignment work as in some other popular languages. I can appreciate the author's tirades about this, as he brought his point around, even with simple examples. And how do you propose to start with a language that doesn't have one-IDE-to-rule-them-all, like Visual Studio or Eclipse? You know how sparse is IDLE by today's standards.
Little discussion of how you might have accomplished tasks in other languages and wish to do the Pythonic equivalent.
That's why there's this other book, "Programming Python", again by Lutz, where he discusses the practical aspects of Python programming, and using the standard library modules. There are examples of the "Pythonic" way to do this or that, instead of masking C/C++ syntax with Python expressions. The discussions of modules, packages and classes is extensive, and down to the details of how they work and are used.
I understand your frustration, and can't comment on the first edition that you've seen. I've preordered the fourth edition - this one - (the whole 1000 or so pages), and I found it a very good self-educational tool - I managed to learn most of the ins-and-outs of the language in just one week, without having prior exposure to Python (I've got experience with 3-4 other programming languages, admittedly). I'd recommend it highly for anyone that wants to learn Python (the language) quickly.
Of course, this is my opinion, so take it as you may.
The thing about mutability in Python is that it can bite you in the neck if you assume the variable passing and assignment work as in some other popular languages.
As I understand it, variable passing and assignment works in Python like it works in Java, or at least as it would if every variable in Java were of type java.lang.Object (with autoboxing of primitive types).
Research is what I'm doing when I don't know what I'm doing.
-- Wernher von Braun
Better Than First Edition? (Score:5, Insightful)
I sincerely hope that this version is better than the first edition, although anything short of a random re-arrangement of pages would serve as an improvement. The first edition actually delayed my initial use of Python by about a year and a half. I had heard wonderful things about the language so I figured, "Ah, an O'Reilly book!" Big mistake.
Endless bits about immutability, without hints as to why I ought to care. I can appreciate the use of the interactive prompt now, but to start with it seems ... s
Re:Better Than First Edition? (Score:2, Interesting)
Endless bits about immutability, without hints as to why I ought to care. I can appreciate the use of the interactive prompt now, but to start with it seems ... strange.
The thing about mutability in Python is that it can bite you in the neck if you assume the variable passing and assignment work as in some other popular languages. I can appreciate the author's tirades about this, as he brought his point around, even with simple examples. And how do you propose to start with a language that doesn't have one-IDE-to-rule-them-all, like Visual Studio or Eclipse? You know how sparse is IDLE by today's standards.
Little discussion of how you might have accomplished tasks in other languages and wish to do the Pythonic equivalent.
That's why there's this other book, "Programming Python", again by Lutz, where he discusses the practical aspects of Python programming, and using the standard library modules. There are examples of the "Pythonic" way to do this or that, instead of masking C/C++ syntax with Python expressions. The discussions of modules, packages and classes is extensive, and down to the details of how they work and are used.
I understand your frustration, and can't comment on the first edition that you've seen. I've preordered the fourth edition - this one - (the whole 1000 or so pages), and I found it a very good self-educational tool - I managed to learn most of the ins-and-outs of the language in just one week, without having prior exposure to Python (I've got experience with 3-4 other programming languages, admittedly). I'd recommend it highly for anyone that wants to learn Python (the language) quickly.
Of course, this is my opinion, so take it as you may.
Re: (Score:2)
The thing about mutability in Python is that it can bite you in the neck if you assume the variable passing and assignment work as in some other popular languages.
As I understand it, variable passing and assignment works in Python like it works in Java, or at least as it would if every variable in Java were of type java.lang.Object (with autoboxing of primitive types).