Wie/warum sind {2,3,10} und {x,3,10} mit x=2 unterschiedlich geordnet?
Posted: 13 Jan 2025, 17:15
Mengen sind ungeordnet, bzw. ihre Reihenfolge ist ein Implementierungsdetail. Dieses Detail interessiert mich. Und ich habe einen Fall gesehen, der mich überrascht hat:
Ausgabe (Online ausprobieren!):
Obwohl identische Elemente in identischer Reihenfolge geschrieben sind, werden sie unterschiedlich angeordnet. Wie passiert das und wird das aus irgendeinem Grund absichtlich gemacht, z. B. um die Suchgeschwindigkeit zu optimieren?
Meine sys.version und sys.implementation:< /p>
Code: Select all
print({2, 3, 10})
x = 2
print({x, 3, 10})
Code: Select all
{3, 10, 2}
{10, 2, 3}
Meine sys.version und sys.implementation:< /p>
Code: Select all
3.13.0 (main, Nov 9 2024, 10:04:25) [GCC 14.2.1 20240910]
namespace(name='cpython', cache_tag='cpython-313', version=sys.version_info(major=3, minor=13, micro=0, releaselevel='final', serial=0), hexversion=51183856, _multiarch='x86_64-linux-gnu')