python – How to fix TypeError: len() of unsized object
python – How to fix TypeError: len() of unsized object
Use the arrays size
attribute instead:
nv = v.size
nu = u.size
You also probably want to use numpy.fromstring
to take and convert the input string into an array:
>>> v = np.fromstring(input(enter the elements of the vector separated by comma: ), dtype=int, sep=,)
enter the elements of the vector separated by comma: 1, 2, 3
>>> v
array([1, 2, 3])
>>> len(v)
3
>>> v.size
3
For me this error occurred when I had the following situation:
import numpy as np
arr = np.array([[1]])
arr_squeezed = arr.squeeze()
len(arr_squeezed) # TypeError: len() of unsized object
For this to work properly, make sure that array youre squeezing contains more then one element.