Для моего заявления, я могу объявить массив строк двумя способами:Объединение строк в списке Python (строк) по сравнению с NumPy массив (строк)
В списке
strArr1 = [""] * 5
илиКак Numpy массив
strArr2 = numpy.empty([5], dtype=str)
Однако, я вижу следующую разницу, когда я пытаюсь объединить символы элементов массива. В первом случае, например,
strArr1[0] += 'a'
strArr1[0] += 'b'
дает мне как ожидалось ['ab', '', '', '', '']
.
Во втором случае, однако,
strArr2[0] += 'a'
strArr2[0] += 'b'
дает мне результат ['a', '', '', '', '']
.
Почему конкатенация не работает как ожидалось для элементов массива numpy? Кроме того, учитывая, что у меня есть ограничение на то, что я должен расширять элементы моего массива по одному символу за раз, может ли кто-нибудь предложить эффективный и питонический подход?
Спасибо.
Что еще вы делаете с этими списками или массивами? До сих пор я не вижу веских оснований использовать форму массива. – hpaulj