On 2015-12-03 16:00, Robin Koch wrote:
Am 03.12.2015 um 10:02 schrieb Gary Herron:
On 12/02/2015 10:55 PM, Robert wrote:
Hi,
I read the tutorial on "Why is join() a string method instead of a list
or tuple method?"
at link:
https://docs.python.org/2/faq/design.html#why-must-self-be-used-explicitly-in-method-definitions-and-calls
I have a problem on running the last line:
---------------
If none of these arguments persuade you, then for the moment you can
continue to use the join() function from the string module, which
allows
you to write
string.join(['1', '2', '4', '8', '16'], ", ")
-----------------------
My Python console is 2.7. It should be no problem because I see the
tutorial
is 2.7 too.
The console has these display:
string.join(['1', '2', '4', '8', '16'], ", ")
---------------------------------------------------------------------------
NameError Traceback (most recent call
last)
<ipython-input-15-3947890a7e6e> in <module>()
----> 1 string.join(['1', '2', '4', '8', '16'], ", ")
NameError: name 'string' is not defined
From the context, I don't see string should be replaced by something
else.
Could you tell me why I have such an error?
You are trying to use the *string* module without importing it, I'd guess.
Try:
import string
first then you should be able to access string.join without error.
Now *I* am confused.
Shouldn't it be
", ".join(['1', '2', '4', '8', '16'])
instead? Without any importing?
The documentation says: """The string module contains a number of
useful constants and classes, as well as some deprecated legacy
functions that are also available as methods on strings."""
The "join" function is one of those old functions you don't need any
more, and you're correct that the the "join" method should be used
instead.
--
https://mail.python.org/mailman/listinfo/python-list