2013-05-07 13 views
7

ऐसा क्यों होता है?numpy.all पूर्णांक तर्क के साथ एक पूर्णांक

>>> map(numpy.all, range(-2, 3)) 
[-2, -1, 0, 1, 2] 

क्या यह जानबूझकर है या केवल एक दरार के माध्यम से पूर्णांक है?

>>> map(numpy.all, [False, True]) 
[False, True] 

मैं चल रहा हूँ Numpy 1.8.0.dev-74b08b3 और Python 2.7.3

+4

मुझे पाइथन 2.7.3, NumPy 1.6.1 पर '[सही, सही, गलत, सही, सही] 'मिलता है। आप पाइथन और न्यूमपी के किस संस्करण का उपयोग कर रहे हैं? –

+5

मैं ओपी के आउटपुट को 1.7.1 में पुन: उत्पन्न कर सकता हूं। – DSM

+1

आप 'np.all (-2) 'वापस आने की क्या अपेक्षा करते हैं? –

उत्तर

1

map(numpy.all, range(-2,3)) का उपयोग वास्तव में के साथ एक सूची पैदा कर रही है:

[numpy.all(-2), numpy.all(-1), numpy.all(0), numpy.all(1), numpy.all(2)] 

देने

[-2, -1, 0, 1, 2] 

यह के साथ क्या करना है

आप map(lambda x: numpy.all([x]), range(-2,3)) किया था, तो यह करना होगा:

[numpy.all([-2]), numpy.all([-1]), numpy.all([0]), numpy.all([1]), numpy.all([2])] 

[True, True, False, True, True] 

देने @Mark डिकिंसन द्वारा पोस्ट की गई हैं, वहाँ जिसमें यह True के बजाय इनपुट मान देता है numpy.all साथ एक ज्ञात समस्या है या कुछ इनपुट के लिए False। आपके दूसरे उदाहरण में map(numpy.all, [False, True]) इनपुट वैल्यू लौटने पर पहले जैसा करता है।

संबंधित मुद्दे