---------- My feelings about this topic have been expressed adequately by others. I'm not sure what to say about the code that worked in 1.5.2 but broke in 2.0 -- if these were book examples, I suspect that the book was probably using undocumented (if commonly seen) features, line multi-argument append() or connect(). As someone else said: Change happens. Get over it. :-)
"Tim Peters" <tim.one@home.com> writes:
On the deprecation of the string module: where did this idea come from? I've never seen anything saying that the string module is deprecated.
Michael Hudson:
I thought this, and went looking. I found on http://www.python.org/1.6/, about four fifths of the way down:
Changed Modules
string - most of this module is deprecated now that strings have methods. This no longer uses the built-in strop module, but takes advantage of the new string methods to provide transparent support for both Unicode and ordinary strings.
I hope (and believe) this is Wrong.
Because of its importance, the deprecation time of the string module will be longer than that of most deprecated modules. I expect it won't be removed until Python 3000.
http://www.python.org/2.0/new-python.html says:
The old string module is still around for backwards compatibility, but it mostly acts as a front-end to the new string methods.
which is IMHO better.
Yes. And Greg Ewing:
I think there are still legitimate reasons for using some parts of the string module. For example, if you're one of those stubborn people who refuse to accept that ",".join(foo) is a better way of writing string.join(foo,",").
This has been discussed -- jut note that continuing to use the string module *is* frowned upon, and such stubborn code will get its just desserts when Py3K arrives. I suggest adding the following to the string module's documentation (rather than marking it as explicitly deprecated): This module exists for backwards compatibility only. It will eventually be deprecated and its use should be avoided in new code. I also suggest that someone go through the standard library and get rid of all uses of the string module. (What to do with string.letters c.s.?) --Guido van Rossum (home page: http://www.python.org/~guido/)