Message344145
| Author |
johnlinp |
| Recipients |
johnlinp |
| Date |
2019年06月01日.04:07:00 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1559362021.42.0.783299654915.issue37119@roundup.psfhosted.org> |
| In-reply-to |
| Content |
When I create 2 different dicts with the same literal, their dict.values() are equal in python2 but not equal in python3.
Here is an example in python2:
$ python2
Python 2.7.16 (default, Mar 4 2019, 09:02:22)
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-10001145.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> a = {'hello': 'world'}
>>> b = {'hello': 'world'}
>>> a.values() == b.values()
True
>>> a.keys() == b.keys()
True
However, the dict.values() are not equal in python3:
$ python3
Python 3.7.2 (default, Feb 12 2019, 08:16:38)
[Clang 10.0.0 (clang-10001145.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> a = {'hello': 'world'}
>>> b = {'hello': 'world'}
>>> a.values() == b.values()
False
>>> a.keys() == b.keys()
True
Is this a bug? Or is this behavior specified somewhere in the documentation? Thanks.
Note: it's inspired by this StackOverflow question: https://stackoverflow.com/questions/56403613/questions-about-python-dictionary-equality |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2019年06月01日 04:07:01 | johnlinp | set | recipients:
+ johnlinp |
| 2019年06月01日 04:07:01 | johnlinp | set | messageid: <1559362021.42.0.783299654915.issue37119@roundup.psfhosted.org> |
| 2019年06月01日 04:07:01 | johnlinp | link | issue37119 messages |
| 2019年06月01日 04:07:00 | johnlinp | create |
|