descriptor 'join' requires a 'unicode' object but received a 'str'
<p>Code adapted from <a href="http://wiki.geany.org/howtos/convert_camelcase" rel="nofollow">here</a>:</p>

<pre><code>#from 'foo_bar' to 'Foo.Bar'
def lower_case_underscore_to_camel_case(self, string):
  print string
  class_ = string.__class__
  return class_.join('.', map(class_.capitalize, string.split('_')))
</code></pre>

<p>Output:</p>

<pre><code>client_area
TypeError: descriptor 'join' requires a 'unicode' object but received a 'str'
</code></pre>

<p>Especially disappointing since the source code states:</p>

<blockquote>
  <p>"""Convert string or unicode from lower-case underscore to camel-case"""</p>
</blockquote>

<p>How to fix this?</p>

<hr>

<p>Easy fix:</p>

<pre><code>return str.join('.', map(class_.capitalize, string.split('_')))
</code></pre>

<p>Could anyone explain me the overall process?</p>
