Ray, please reply on-list in the future in case someone else has input.<br><br><div class="gmail_quote">On Fri, Mar 12, 2010 at 8:01 PM, Ray Parrish <span dir="ltr">&lt;<a href="mailto:crp@cmc.net">crp@cmc.net</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Luke Paireepinart wrote:<div class="im"><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">


    print &quot;A %s with dimensions %sx%s has an area of %s.&quot; % (choice, height, width, width*height)<br>
<br></blockquote></div><div class="im"><br>
Isn&#39;t it a little more understandable to use a construct like the following?<br>
<br>
&gt;&gt;&gt; print &quot;The area of a &quot; + Choice + &quot;is &quot; str(Width) + &quot; x &quot; + str(Height) + &quot; equals &quot; + str(Width * Height) + &quot; square feet&quot;<br>
<br>
The area of a rectangle is 12 x 10 equals 120 square feet.<br>
<br>
I find that putting the variables on the end like that, when you&#39;re not actually applying any special formatting to them makes it less readable when I&#39;m debugging my stuff, or when someone else is reading my code, and trying to understand it.<br>


<div class="h5"><br>
<br>
</div></div></blockquote><div>Your version creates at least 10 intermediate strings before outputting.<br>Remember strings are immutable in Python.  <br>So you&#39;re constructing strings<br>The area of a<br>The area of a rectangle<br>

The area of a rectangle is<br>12<br>The area of a rectangle is 12<br>The area of a rectangle is 12 x <br>10<br>The area of a rectangle is 12 x 10<br>The area of a rectangle is 12 x 10 equals<br>120<br>
The area of a rectangle is 12 x 10 equals 120<br>
The area of a rectangle is 12 x 10 equals 120 square feet<br><br>With string formatting you avoid all of these intermediate strings, so it&#39;s arguably more efficient.<br>Other than just viewing from a performance standpoint though, I find it much easier to read my version, because any computation required takes place at the end of the line.<br>

For example, your inline str(width*height) requires you to read the whole line to see it.<br><br>It&#39;s really a personal thing, it&#39;s easier for me to read the formatting version than the string concatenation version, in most cases.<br>

Now if you had used the comma convention I would have seen your point.  This is, I think, the easiest to read of all 3<br>area = width * height<br>print &quot;The area of a&quot;, choice, &quot;is&quot;, width, &quot;x&quot;, height, &quot;, which equals&quot;, area, &quot;square feet.&quot;<br>

<br>Also, why are you capitalizing variable names?  That&#39;s a pretty unusual convention.<br><br>-Luke<br><br><br> </div></div><br>