ব্যতিক্রম হওয়ার কারণ হ'ল and
সুস্পষ্টভাবে কল bool
। প্রথমে বাম অপারেন্ডে এবং (যদি বাম অপারেন্ড হয় True
) তারপরে ডান অপারেণ্ডে। সুতরাং x and y
সমতূল্য bool(x) and bool(y)
।
তবে bool
একটি উপর numpy.ndarray
(যদি এটি একাধিক উপাদান রয়েছে) ব্যতিক্রম আপনি দেখেছি নিক্ষেপ করা হবে:
>>> import numpy as np
>>> arr = np.array([1, 2, 3])
>>> bool(arr)
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
bool()
কল অন্তর্নিহিত রয়েছে and
, কিন্তু এর মধ্যে if
, while
, or
, তাই নিচের উদাহরণটি কোন ব্যর্থতা হবে:
>>> arr and arr
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
>>> if arr: pass
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
>>> while arr: pass
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
>>> arr or arr
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
পাইথনে আরও ফাংশন এবং স্টেটমেন্ট রয়েছে যা bool
কলগুলি আড়াল করে, উদাহরণস্বরূপ 2 < x < 10
লেখার অন্য একটি উপায় 2 < x and x < 10
। আর and
ডাকব bool
: bool(2 < x) and bool(x < 10)
।
উপাদান ভিত্তিক জন্য সমতুল্য and
হবে np.logical_and
ফাংশন, একভাবে আপনি ব্যবহার করতে পারে np.logical_or
সমতুল হিসাবে or
।
বুলিয়ান অ্যারে - এবং তুলনা পছন্দ <
, <=
, ==
, !=
, >=
এবং >
NumPy উপর অ্যারে বুলিয়ান NumPy অ্যারে আসতে - আপনার কাছে ব্যবহার করতে পারেন উপাদান-অনুযায়ী, bitwise ফাংশন (এবং অপারেটরদের): np.bitwise_and
( &
অপারেটর)
>>> np.logical_and(arr > 1, arr < 3)
array([False, True, False], dtype=bool)
>>> np.bitwise_and(arr > 1, arr < 3)
array([False, True, False], dtype=bool)
>>> (arr > 1) & (arr < 3)
array([False, True, False], dtype=bool)
এবং bitwise_or
( |
অপারেটর):
>>> np.logical_or(arr <= 1, arr >= 3)
array([ True, False, True], dtype=bool)
>>> np.bitwise_or(arr <= 1, arr >= 3)
array([ True, False, True], dtype=bool)
>>> (arr <= 1) | (arr >= 3)
array([ True, False, True], dtype=bool)
লজিকাল এবং বাইনারি ফাংশনগুলির একটি সম্পূর্ণ তালিকা নম্পপি ডকুমেন্টেশনে পাওয়া যাবে: