How to fix "TypeError: len() of unsized object"

arrays, numpy, python

Solution

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

Problem

I am getting: TypeError: len() of unsized object after running the following script: ``` from numpy import * v=array(input('Introduce un vector v: ')) u=array(input('Introduce un vector u: ')) nv= len(v) nu= len(u) diferenza= 0; i=0 if nv==nu: while i<nv: diferenza=diferenza + ((v[i+1]-u[i+1]))**2 modulo= sqrt(diferenza) print('Distancia', v) else: print('Vectores de diferente dimensión') ``` How can I fix this?

Original source