如果數組的大小爲2 x 2或更大,那麼一切都很好,但如果行的維數爲1,例如1x2,numpy會執行某些操作沒想到。當我嘗試從一個QString數組創建時,創建一個numpy數組失敗了。
我該如何解決這個問題?
# TEST 1 OK
myarray = np.array([[QString('hello'), QString('world')],
[QString('hello'), QString('moon')]],
dtype=object)
print myarray
print myarray.shape
#[[PyQt4.QtCore.QString(u'hello') PyQt4.QtCore.QString(u'world')]
# [PyQt4.QtCore.QString(u'hello') PyQt4.QtCore.QString(u'moon')]]
#(2, 2)
# TEST 2 OK
myarray = np.array([['hello'], ['world']], dtype=object)
print myarray
print myarray.shape
#[['hello']
# ['world']]
#(2, 1)
# TEST 3 FAIL
myarray = np.array([[QString('hello'), QString('world')]], dtype=object)
print myarray
print myarray.shape
#[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[PyQt4.QtCore.QString(u'h')]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
#..
#[[[[[[[[[[[[[[[[[[[[[[[[[[[[[PyQt4.QtCore.QString(u'e')]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
# etc...
#(1, 2, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
哦奇怪...似乎像numpy的是處理字符串數組或東西...如果你把會發生什麼2個方括號之間的逗號? – karina