title: Trouble assigning array slice to unicode value
body: <p>I am trying to assign a number of entries in a numpy array to a single unicode value (from another array) using slice notation, but as seen in the snippet below, I'm getting back garbage:</p>
  
  <pre><code>&gt;&gt;&gt; import numpy as np
  &gt;&gt;&gt; a = np.array([u'America/Los_Angeles']*3)
  &gt;&gt;&gt; a
  array([u'America/Los_Angeles', u'America/Los_Angeles',
         u'America/Los_Angeles'],
        dtype='&lt;U19')
  &gt;&gt;&gt; s = np.zeros(10,dtype=a.dtype)
  &gt;&gt;&gt; s
  array([u'', u'', u'', u'', u'', u'', u'', u'', u'', u''],
        dtype='&lt;U19')
  &gt;&gt;&gt; s[0:2] = a[0]
  &gt;&gt;&gt; s
  array([ u'\uf300\udc41\uf440\udc65\uf080\udc69\ue380\udc61\uf380\udc4c\uef80\udc73\uf340\udc41\uf100\udc67\uf100\udc6cs\uf8ad\ude98\u7ff5\x00\x00\x01\x00\x02\ud7bf\udfff\uf77c\udc30',
         u'\uf300\udc41\uf440\udc65\uf080\udc69\ue380\udc61\uf380\udc4c\uef80\udc73\uf340\udc41\uf100\udc67\uf100\udc6cs\uf8ad\ude98\u7ff5\x00\x00\x01\x00\x02\ud7bf\udfff\uf77c\udc30',
         u'', u'', u'', u'', u'', u'', u'', u''],
        dtype='&lt;U19')
  </code></pre>
  
  <p>When running this with python 2.7.3 and numpy 1.6.2 I had no problem, getting back what I expected:</p>
  
  <pre><code>&gt;&gt;&gt; s
  array([u'America/Los_Angeles', u'America/Los_Angeles', u'', u'', u'', u'',
         u'', u'', u'', u''],
        dtype='&lt;U19')
  </code></pre>
  
  <p>But this has apparently changed with python 2.7.10 and numpy 1.9.2. I can come up with various ways around this issue, but my question is this: What is the best (most pythonic, fastest, most general) solution to get the results I was expecting?</p>
  
  <p>The context of this is I'm trying to expand a bunch of arrays from an irregular time series into arrays for a regular time series for arrays of a bunch of different types (float, int, unicode, etc.), so I'd prefer to find solutions that work with any type without a lot of 'if isinstance' clauses.</p>