On 21/08/2012 17:44, Miki Tebeka wrote:
Greetings,
class A:
... '''a doc string'''
...
A.__doc__
'a doc string'
class B:
... '''a {} string'''.format('doc')
...
B.__doc__
Is there's a reason for this?
I know I can do:
class B:
... __doc__ = '''a {} string'''.format('doc')
And it'll work, but I wonder why the first B docstring is empty.
I think what's happening is that it's being parsed and then checked to
see whether it's a string literal.
This:
"doc string"
is OK, as is this:
"doc" "string"
(implied concatenation) and this:
("doc string")
but this isn't:
"doc" + " string"
because its syntax is:
ADD(STRING_LITERAL, STRING_LITERAL)
In other words, it's looking at the syntax, not the resulting value.
--
http://mail.python.org/mailman/listinfo/python-list