मुझे लगता है कि none
List::MoreUtils
से subroutine वर्णित के रूप में कार्य नहीं करता है। प्रलेखन के अनुसार,सूची है :: MoreUtils :: कोई भी छोटी गाड़ी नहीं?
कोई भी ब्लॉक सूची तर्कसंगत रूप से किसी की अस्वीकृति नहीं। LIST में कोई आइटम ब्लॉक, के माध्यम से दिए गए मानदंड को पूरा करता है या यदि LIST खाली खाली है तो एक वास्तविक मान देता है। बारी
में सूची में प्रत्येक आइटम के लिए $ _ सेट अब, कोशिश:
use strict;
use warnings;
use 5.012;
use List::MoreUtils qw(none);
my @arr = (1, 2, 3);
if (none { $_ == 5 } @arr) {
say "none of the elements in arr equals 5";
}
else {
say "some element in arr equals 5";
}
ठीक काम करता है, लेकिन एक खाली एक (my @arr =();
या बस my @arr;
) के साथ @arr
की जगह है और आप एक गलत जवाब मिलता है।
क्या चल रहा है?
अपडेट: मेरे पास सूची :: MoreUtils ver 0.22 थी। नवीनतम में अपडेट किया गया और यह ठीक लगता है। हालांकि अजीब!
कार्यान्वयन संस्करण 0.22 के बीच बदल गया है और नवीनतम - के लिए मेरा उत्तर – Zaid