ध्यान रखें कि आप वर्तमान में ऑब्जेक्ट आइडेंटिटी के लिए परीक्षण कर रहे हैं ( isकेवल रिटर्न Trueयदि दोनों ऑपरेंड को मेमोरी में एक ही ऑब्जेक्ट द्वारा दर्शाया जाता है - यह हमेशा दो ऑब्जेक्ट के साथ ऐसा नहीं है जो बराबर की तुलना करता है ==)। यदि आप उद्देश्य से ऐसा कर रहे हैं, तो आप अपने कोड को फिर से लिख सकते हैं
some_dict = {key: value for key, value in some_dict.items()
if value is not value_to_remove}
लेकिन यह वह नहीं हो सकता जो आप चाहते हैं:
>>> some_dict = {1: "Hello", 2: "Goodbye", 3: "You say yes", 4: "I say no"}
>>> value_to_remove = "You say yes"
>>> some_dict = {key: value for key, value in some_dict.items() if value is not value_to_remove}
>>> some_dict
{1: 'Hello', 2: 'Goodbye', 3: 'You say yes', 4: 'I say no'}
>>> some_dict = {key: value for key, value in some_dict.items() if value != value_to_remove}
>>> some_dict
{1: 'Hello', 2: 'Goodbye', 4: 'I say no'}
तो आप शायद !=इसके बजाय चाहते हैं is not।