On Tue, Jan 11, 2022 at 10:29 AM Guido van Rossum <guido@python.org> wrote:
I personally think F-strings should not be usable as docstrings. If you want a dynamically calculated docstring you should assign it dynamically, not smuggle it in using a string-like expression. We don't allow "blah {x} blah".format(x=1) as a docstring either, not "foo %s bar" % x.

Agreed.  If we wanted to remove the wart of constant f-strings happening to work as an implementation detail in this context, that could be made into a warning.  But that kind of check may be best left to a linter for all of these dynamic situations that don't wind up populating __doc__.

-gps
 

On Tue, Jan 11, 2022 at 8:12 AM Antoine Pitrou <antoine@python.org> wrote:
On Tue, 11 Jan 2022 10:58:03 -0500
"Eric V. Smith" <eric@trueblade.com> wrote:
> Constant f-strings (those without substitutions) as doc strings used to
> work, since the compiler turns them into normal strings.
>
> I can't find exactly where it was removed, but there was definitely
> discussion about it. See https://bugs.python.org/issue28739 for at least
> part of the discussion.

Ah, sorry for the misunderstanding.  While the example I showed doesn't
have any substitutions, I'm interested in the non-trivial (non-constant)
case actually :-)

Regards

Antoine.


>
> Eric
>
> On 1/11/2022 8:41 AM, Antoine Pitrou wrote:
> > Hello,
> >
> > Currently, a f-string is not recognized as a docstring:
> > 
> >>>> class C: f"foo"
> >>>> C.__doc__
> >>>> 
> > This means you need to use a (admittedly easy) workaround:
> > 
> >>>> class C: __doc__ = f"foo"
> >>>> C.__doc__ 
> > 'foo'
> >
> > Shouldn't the former be allowed for convenience?
> >
> > Regards
> >
> > Antoine.
> >
> >
> > _______________________________________________
> > Python-Dev mailing list -- python-dev@python.org
> > To unsubscribe send an email to python-dev-leave@python.org
> > https://mail.python.org/mailman3/lists/python-dev.python.org/
> > Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/UALMEMQ4QW7W4HE2PIBARWYBKFWJZFB4/
> > Code of Conduct: http://python.org/psf/codeofconduct/ 



_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-leave@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/37YAHCREZYZFSV4BRDKUEQAX4ZF4JTI6/
Code of Conduct: http://python.org/psf/codeofconduct/


--
--Guido van Rossum (python.org/~guido)
_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-leave@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/35R3DCNPIQJ7ZCHTLP64IP2XZCK7QSLJ/
Code of Conduct: http://python.org/psf/codeofconduct/