6
>>> [l for l in range(2,100) if litheor(l)!=l in sieve(100)]
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
>>> 2 in sieve(100)
True
>>> litheor(2)
True
तो litheor(2)
True
और 2 in sieve(100)
True
है है, इसलिए सूची समझ में if
खंड False
है। लेकिन सूची की समझ के आउटपुट में अभी भी 2
क्यों है?पायथन: सूची समझ में कहीं कुछ गलत हो गया?
धन्यवाद। 1, हालांकि, चलनी में नहीं है (100)। क्या कोई और चीज गलत हो सकती है? –
@SylvesterVLowell Well, निम्न में से एक हो सकता है: 1) 'चलनी (100)' जिसमें न केवल पूर्णांक होते हैं बल्कि बूलियन 'ट्रू' भी होते हैं; 2) 'लिथियर (2)' बूलियन और 'चलनी (100) '' '' के बजाय '2' लौटा रहा है। मैं कोई अन्य विकल्प नहीं देख सकता। क्या आप हमें 'चलनी' और 'लिथियर' की अपनी परिभाषा दिखा सकते हैं, कृपया? – kirelagin
@SylvesterVLowell ओह रुको ... आप सही हैं ... यह पूरी तरह पागल है ... – kirelagin