Movatterモバイル変換
[0]ホーム
[Python-Dev] Mundane dict __setitem__...
David Abrahamsdave@boost-consulting.com
Tue, 03 Jun 2003 11:17:52 -0400
Samuele Pedroni <pedronis@bluewin.ch> writes:> At 08:09 03.06.2003 -0400, David Abrahams wrote:>>>I am about to write some code which relies on the following:>>>> x = (1,2,3)>> y = (1,2,3)>> d = {}>> d[x] = 1>> d[y] = 1>> assert d.keys()[0] is y>>>>In other words, when you do d[k] = v it replaces both v *and* k in the>>dict. I couldn't find it documented anywhere but the source. I>>submitted a doc patch which enshrines that behavior, but since Guido>>doesn't always know what's in the doc I wanted to make sure it was>>considered reasonable.>>>>Anyone want to tell me it's a bad idea? It seems like the more useful>>of the two possible behaviors to me.>>> that's not the case with Jython, i.e. the assert will fail in Jython.Why doesn't Jython work like CPython in this regard?> Dicts are equality not identity dicts so both behavior, as I see it,> are fine. In the end what happens with the fragment is unspecified.Unless someone accepts my patch ;-)-- Dave AbrahamsBoost Consultingwww.boost-consulting.com
[8]ページ先頭