Upon further inspection, although a shift of 4 (on a 64-bit linux box)
isn't perfect for dict, it's fairly close to it and well beyond random
hash values. Mixing things more is just gonna lower it towards random
values.
>>> c()
2: 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2
4: 1, 1, 2, 3, 4, 3, 3, 2, 2, 2, 3
8: 1, 2, 4, 7, 8, 7, 5, 6, 7, 5, 5
16: 2, 4, 7, 11, 16, 15, 12, 14, 15, 9, 7
32: 3, 5, 10, 18, 31, 30, 30, 30, 31, 20, 12
64: 8, 14, 23, 36, 47, 54, 59, 59, 61, 37, 21
128: 16, 32, 58, 83, 118, 100, 110, 114, 126, 73, 41
256: 32, 64, 128, 195, 227, 197, 203, 240, 253, 150, 78 |