[issue24434] ItemsView.__contains__ does not mimic dict_items

2015-06-11 Thread Caleb Levy
Changes by Caleb Levy caleb.l...@berkeley.edu: -- components: Library (Lib) nosy: clevy, rhettinger, stutzbach priority: normal severity: normal status: open title: ItemsView.__contains__ does not mimic dict_items type: behavior versions: Python 2.7, Python 3.2, Python 3.3, Python 3.4

[issue24434] ItemsView.__contains__ does not mimic dict_items

2015-06-11 Thread Caleb Levy
New submission from Caleb Levy: The current implementation ItemsView.__contains__ reads class ItemsView(MappingView, Set): ... def __contains__(self, item): key, value = item try: v = self._mapping[key] except KeyError: return False

[issue24434] ItemsView.__contains__ does not mimic dict_items

2015-06-11 Thread Caleb Levy
Caleb Levy added the comment: @serhiy.storchaka: I don't think that will work. First of all, x, y = item will raise a ValueError if fed an iterable whose length is not exactly 2, so you would have to check for that. Moreover, if item is something like a dict, for example

[issue24434] ItemsView.__contains__ does not mimic dict_items

2015-06-11 Thread Caleb Levy
Caleb Levy added the comment: Sorry; that should be DictLikeMapping(a=b).items(), where DictLikeMapping is defined in the patch unit tests. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue24434