x = np.arange(0,2,0.5)
valeur = 2*x
if valeur <= 0.6:
print ("this works")
else:
print ("valeur is too high")
đây là lỗi tôi nhận được:Sử dụng a.any() hoặc a.all()
if valeur <= 0.6:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Tôi đã đọc nhiều bài viết về a.any() hoặc a.all() nhưng vẫn không thể tìm thấy cách giải thích rõ ràng cách khắc phục sự cố. Tôi thấy lý do tại sao Python không thích những gì tôi đã viết nhưng tôi không chắc chắn làm thế nào để sửa chữa nó.
'valeur' là một vectơ có một số phần tử nhỏ hơn 0,6 và một số lớn hơn. Ý bạn là gì với 'valeur <= 0.6'? – Daniel
valeur là một vectơ bằng [0. 1. 2. 3.] Tôi quan tâm đến từng thuật ngữ. Đối với phần dưới 0,6, sau đó trả lại "công trình này". Đối với phần trên 0,6, trả về "valeur quá cao", đây là phiên bản câm xuống, thay vì Print this hoặc Print dựa trên điều kiện, tôi cho mỗi phần tử của Valeur vào phương trình 1 hoặc phương trình 2 tùy theo điều kiện –
so sánh một giá trị duy nhất với vectơ giống như so sánh cam và táo, 'any()' và 'all()' là các hàm xác minh xem điều kiện đó có được thỏa mãn bởi bất kỳ phần tử nào trong vectơ hay không, hoặc tất cả các phần tử thỏa mãn điều kiện – saljuama