[英]Efficient product of 1D array and 3D array along one dimension - NumPy
[英]numpy zero-dimension array to 1d
我在numpy中有一個數組: [0 1 2 3]
當我嘗試使用a [0]獲取第一個元素時,它拋出: IndexError: too many indices for array
如果我for x in a: print(x)
使用for x in a: print(x)
Python會TypeError: iteration over a 0-d array
拋出TypeError: iteration over a 0-d array
嘗試使用list(a)
創建列表會引發TypeError: 'numpy.uint8' object is not iterable
如何將此數字列表轉換為標准列表?
這將有助於您了解如何創建a
以便我們可以嘗試重現錯誤。
import numpy as np
a = np.array([0, 1, 2, 3])
print(a[0]) # 0
for x in a:
print(x) # 0 1 2 3
# you can call list() to convert to a python list
print(list(a))
# you can also call the built-in numpy array method
print(a.tolist())
a = np.array(a)
print(a, type(a)) # [0 1 2 3] <class 'numpy.ndarray'>
print(a[0]) # 0
print(a[1]) # 1
所有這些操作均成功。 Python 3.7.1,Numpy 1.15.4
嘗試使用a=array('[0 1 2 3]', dtype='<U9')
檢查數組的類型,我能夠復制兩個錯誤。 如果是這種情況,請嘗試以下操作
b=list(str(a))
newArray=[]
for val in b:
try:
newArray.append(int(val))
except ValueError:
pass
Python不會像其他一些語言一樣自動將字符串的值更改為int
或float
。 希望能幫助到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.