Пайтон - я фигею без баяна
s = set()
for i in range(0,10) :
s.add('s'+str(i))
s.add(i)
for i in s :
print(i)
Тестовая программка на питоне. Можно её даже онлайн погонять: https://onlinegdb.com/ByVgsweQ_
При каждом прогоне выдаёт разную последовательность строк. При этом целые значения упорядочены от 0 до 9 (!), а между ними в случайном порядке (!!), всякий раз разном (!!!) располагаются строковые значения. Откровенно говоря, я даже не знаю, какой из этих трёх фактов выглядит более странным.
Вроде везде пишут, что Сеты в Питоне сделаны на хешах.
Как, как им всё это удалось сделать одновременно???
UPD: со строками вроде разобрался - их хеш в Пайтоне рандомизирован (борются с хаккерами).
При случайном закидывании последовательных целых, они оказываются в set упорядоченными, и это как-то мне всё же не нравится.
Осталось разобраться с целыми.
for i in range(0,10) :
s.add('s'+str(i))
s.add(i)
for i in s :
print(i)
Тестовая программка на питоне. Можно её даже онлайн погонять: https://onlinegdb.com/ByVgsweQ_
При каждом прогоне выдаёт разную последовательность строк. При этом целые значения упорядочены от 0 до 9 (!), а между ними в случайном порядке (!!), всякий раз разном (!!!) располагаются строковые значения. Откровенно говоря, я даже не знаю, какой из этих трёх фактов выглядит более странным.
Вроде везде пишут, что Сеты в Питоне сделаны на хешах.
Как, как им всё это удалось сделать одновременно???
UPD: со строками вроде разобрался - их хеш в Пайтоне рандомизирован (борются с хаккерами).
При случайном закидывании последовательных целых, они оказываются в set упорядоченными, и это как-то мне всё же не нравится.
Осталось разобраться с целыми.
no subject
no subject