I'd like to check if variable is None or numpy.array. I've implemented
if not a:
print "please initialize a"
a = None
a = np.array([1,2])
ValueError Traceback (most recent call last)
<ipython-input-41-0201c81c185e> in <module>()
7 a = np.array([1,2])
----> 8 check_a(a)
<ipython-input-41-0201c81c185e> in check_a(a)
1 def check_a(a):
----> 2 if not a:
3 print "please initialize a"
5 a = None
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Just do it!
if a is None: ... else: ...
Or if you want to be more explicit:
if type(a) is np.array: ... else: ...
Thanks to @farenorth, there is also another solution:
isinstance. This is the same as above, but will also return
True for subclasses of that type (if that is what you want).
if isinstance(a, np.array): ... else: ...