On Tue, Oct 02, 2007 at 11:14:38AM -0000, [EMAIL PROTECTED] wrote regarding problem with special built-in method __contains__,: > > if i have a dictionary name number ....and i want to ask the list > whether a particular key already > exists. > > >>> print number > {'octal': '1234567', 'binary': '10100101', 'decimal': '1234567890', > 'hexadecimal': '1-9,a-f'} > > i got error..after execute > > >>>number._contains_("test") > > Traceback (most recent call last): > File "<pyshell#15>", line 1, in <module> > number._contains_("test") > AttributeError: 'dict' object has no attribute '_contains_' >
First of all, the special methods contain a *double* underscore before and after the name, so it's not _contains_, it's __contains__. Secondly, for most basic operations, you shouldn't have to use these special methods directly. They are bound to other funtionality in Python. So instead of: number.__contains('test') try the following: 'test' in number Cheers, Cliff -- http://mail.python.org/mailman/listinfo/python-list