আমি ভেরিয়েবলটি না বা নম্পি.আররে আছে কিনা তা পরীক্ষা করতে চাই। আমি এটি check_aকরতে ফাংশন বাস্তবায়ন করেছি ।
def check_a(a):
if not a:
print "please initialize a"
a = None
check_a(a)
a = np.array([1,2])
check_a(a)
তবে, এই কোডটি ভ্যালুআরারের উত্থাপন করে। সোজা এগিয়ে উপায় কি?
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()
not, সুতরাং ত্রুটিটি আসলে ঘটে যখন notঅ্যারেটিকে একটি একক বুলিয়ান হিসাবে বিবেচনা করার চেষ্টা করে এবং তা খুঁজে বের করতে পারে না can't যদি এটি ~aহত তবে এটি নম্পপির ওভারলোডটি ব্যবহার করতে পারত এবং যখন ifএকক বুলিয়ান হিসাবে অবহেলিত অ্যারে ব্যবহার করার চেষ্টা করে ব্যর্থ হত failed
ValueErrorএকটি সাধারণnumpyপ্রশ্ন common এর অর্থnot a(এই ক্ষেত্রে) 2 টি মান সহ একটি বুলিয়ান অ্যারে তৈরি হয়। এই বুলিয়ান অ্যারেটিifশর্ত হিসাবে ব্যবহার করা যায় না !is Noneবিকল্প জানা ভাল, কিন্তু আপনার কাছে এই ত্রুটি বুঝতে হবে।