Add code example to demonstrate proper string concatenation.
authorKyle Roberts <robertskyl@gmail.com>
Thu, 14 Jun 2012 01:34:08 +0000 (21:34 -0400)
committerKyle Roberts <robertskyl@gmail.com>
Thu, 14 Jun 2012 01:34:08 +0000 (21:34 -0400)
The text does a good job of explaining which route to take when
concatenating strings, but the mention of "join" might mean nothing to
beginners without a concrete example.

docs/writing/structure.rst

index 0fd4ca5..eecf700 100644 (file)
@@ -391,6 +391,26 @@ its parts, it is much more efficient to accumulate the parts in a list,
 which is mutable, and then glue ('join') the parts together when the
 full string is needed.
 
 which is mutable, and then glue ('join') the parts together when the
 full string is needed.
 
+**Bad**
+
+.. code-block:: python
+
+    # create a concatenated string from 0 to 19 (e.g. "012..1819")
+    nums = ""
+    for n in range(20):
+      nums += str(n)   # slow and inefficient
+    print nums
+
+**Good**
+
+.. code-block:: python
+    
+    # create a concatenated string from 0 to 19 (e.g. "012..1819")
+    nums = []
+    for n in range(20):
+      nums.append(str(n))
+    print "".join(nums)  # much more efficient
+
 Vendorizing Dependencies
 ------------------------
 
 Vendorizing Dependencies
 ------------------------