[Python-ideas] Syntax for dedented strings

Michael Foord fuzzyman at gmail.com
Tue Aug 16 23:33:26 CEST 2011


Hello all,

I'm sure this will be shot down [1], but it annoys me often enough that I'm
going to suggest it anyway. :-)

A recent tweet of Raymond's reminded me how useful textwrap.dedent() is for
dedenting triple quoted strings in code blocks:

def function():
    this_string = textwrap.dedent("""\
        Here is some indented text.
        that dedent will handle for us."""
    )

Unfortunately that doesn't work for docstrings as they must be string
literals. It is compounded by the fact that you can't even create the
docstring for a class and manually assign it later. (Why not? But that's
another issue...)

How about *another* string prefix for dedented strings:

class Thing(object):
    d"""
    This text will be,
    nicely dedented,
    thank you very much.
    """"

All the best,

Michael Foord

[1] Because of the -100 rule as much as anything else, which applies doubly
to features requiring new syntax
https://blogs.msdn.com/b/ericgu/archive/2004/01/12/57985.aspx

-- 

http://www.voidspace.org.uk/

May you do good and not evil
May you find forgiveness for yourself and forgive others
May you share freely, never taking more than you give.
-- the sqlite blessing http://www.sqlite.org/different.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20110816/82e54e89/attachment.html>


More information about the Python-ideas mailing list