Textwrap.indent already exists, but was added in Python 3.3. Maybe you're using an earlier interpreter but looking at the Python 3.3 docs?<br><br><div class="gmail_quote">On Mon, Jul 1, 2013 at 1:56 AM, Ron Adam <span dir="ltr"><<a href="mailto:ron3200@gmail.com" target="_blank">ron3200@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
<br>
On 06/30/2013 08:57 PM, Guido van Rossum wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Sun, Jun 30, 2013 at 6:47 PM, Nick Coghlan<<a href="mailto:ncoghlan@gmail.com" target="_blank">ncoghlan@gmail.com</a>>  wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
>On 1 July 2013 11:09, Steven D'Aprano<<a href="mailto:steve@pearwood.info" target="_blank">steve@pearwood.info</a>>  wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
>>but in either case, I think the choice of --- as delimiter is ugly and<br>
>>arbitrary, and very likely is ambiguous (currently, x = ---1 is legal code).<br>
>>Similar suggestions to this have been made many times before, you should<br>
>>search the archives:<br>
>><br>
>><a href="http://mail.python.org/mailman/listinfo/python-ideas" target="_blank">http://mail.python.org/<u></u>mailman/listinfo/python-ideas</a><br>
</blockquote>
><br>
>I'm still partial to the idea of offering textwrap.indent() and<br>
>textwrap.dedent() as string methods.<br>
><br>
>1. You could add a ".dedent()" at the end of a triple quoted string<br>
>for this kind of problem. For a lot of code, the runtime cost isn't an<br>
>issue.<br>
>2. A JIT would definitely be able to avoid recalculating the result every time<br>
>3. Even CPython may eventually gain constant folding for that kind of<br>
>method applied directly to a string literal<br>
>4. I dedent and indent long strings more often than I capitalize,<br>
>center, tab expand, or perform various other operations which already<br>
>grace the str type as methods.<br>
</blockquote>
That's a compelling argument. Let's do it. (Assuming the definition of<br>
exactly how to indent or dedent is not up for discussion -- if there<br>
are good reasons to disagree with textwrap now's the time to bring it<br>
up.)<br>
</blockquote>
<br></div>
It would be an improvement to have them as methods, but I'd actually like to have Str.indent(n) method that takes a value for the leading white space.<br>
<br>
The value to this method would always be a positive number, and any common leading white space would be replaced by the new indent amount.<br>
<br>
S.indent(0) would be the same as S.dedent().<br>
<br>
s = """\<br>
A multi-line string<br>
with 4 leading spaces.<br>
""".indent(4)<br>
<br>
<br>
     s = """\<br>
         A multi-line string<br>
         with 4 leading spaces.<br>
         """.indent(4)<br>
<br>
<br>
     if cond:<br>
         s = """\<br>
             Another multi-line string<br>
             with 4 leading spaces.<br>
             """.indent(4)<br>
<br>
<br>
<br>
The reason I prefer this is ...<br>
<br>
It's more relevant to what I'm going to use the string for and is not just compensating for the block indention level, which has nothing to do with how I'm going to use the string.<br>
<br>
It explicitly specifies the amount of leading white space I want in the resulting string object.  If I want a different indent level, I can just change the value.  Or call the indent method again with the new value.<br>
<br>
I don't need to know what the current leading white space is on the string, just what I want for my output.<br>
<br>
<br>
<br>
Strangely, the online docs for textwrap include an indent function that works a bit different, but it is no longer present in textwrap. Looks like an over site to me.<br>
<br>
Cheers,<br>
    Ron<div class="HOEnZb"><div class="h5"><br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org" target="_blank">Python-ideas@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/python-ideas" target="_blank">http://mail.python.org/<u></u>mailman/listinfo/python-ideas</a><br>
</div></div></blockquote></div><br>