Chciałbym sprawdzić, czy zmienna to None lub numpy.array. Zaimplementowałem check_a
funkcję, aby to zrobić.
def check_a(a):
if not a:
print "please initialize a"
a = None
check_a(a)
a = np.array([1,2])
check_a(a)
Ale ten kod wywołuje ValueError. Jaka jest prosta droga?
ValueError Traceback (most recent call last)
<ipython-input-41-0201c81c185e> in <module>()
6 check_a(a)
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"
4
5 a = None
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
ValueError
jedno z najczęściejnumpy
zadawanych pytań. Oznacza to, żenot a
tworzy tablicę logiczną zawierającą (w tym przypadku) 2 wartości. Ta tablica logiczna nie może być używana jakoif
warunek!is None
Alternatywą jest dobrze wiedzieć, ale należy również zrozumieć ten błąd.