Tishka17
Это не адрес
Tishka17
для cpython-то?
А что, адрес? Мне казалось, это какая-то производная адреса
Tishka17
И все равно непонятно, зачем адрес
Aragaer
я вызывал id в каких-то случаях
Aragaer
но в питоне редко
Aragaer
а в лиспе identity как-то чаще
Pavel
а если честно, не помню уже зачем, но зачем то было надо
Tishka17
Оу, ctypes, окей
Aragaer
эм.. id это рзаве адрс?
Pavel
в cpython - да
Aragaer
а, значит все-таки id и identity это разные вещи
Pavel
но это такой долгоиграющий сайд-эффект
Pavel
то есть никто не гарантирует, что так будет и дальше
Aragaer
... в хаскелле id это identity. Но могу ошибаться
Pavel
в других реализациях интерпретатора там просто какое-то уникальное число
🍁 Jaŭhien
Pavel
с другой стороны, адрес в памяти достаточно уникален
🤔
в какой ситуации может понадобиться функция id
🤔
стандратная
🍁 Jaŭhien
Разве что неявно при obj is other
🍁 Jaŭhien
Ну мб хеширование какое-то
Pavel
Ну мб хеширование какое-то
как я говорил выше, если нужен адрес, то в cpython это самый простой способ. другой вопрос, нахрена вообще вам в питоне нужен адрес
Nikolay
Переводить битки на определенный адрес
Tishka17
🤔
🍁 Jaŭhien
А деньги по емейлу долго идут?
Tishka17
Pavel
🤔
раньше читал что для болших чисел будет False
Tishka17
Pavel
Nikolay
Pavel
🤔
Language:
py3
Source:
a = float(3000000000000)
b = float(3000000000000)
print(id(a) == id(b))
Result:
False
🍁 Jaŭhien
🍁 Jaŭhien
=)
Tishka17
Tishka17
Есть разница между числами как результатом операций и полученным из литерала в коде
Pavel
да оно и на интах должно было False выдать, если инт не в диапазоне от -5 до 25{X}(не помню сколько)
🤔
Language:
py3
Source:
a = 1.0123012309120301031
b = 1.0123012309120301031131093901390103
print(id(a) == id(b))
Result:
True
🤔
втф
Pavel
втф
интересно, что сей бот использует
Pavel
на чем, собственно, запускает то
Tishka17
Tishka17
Если один литерал используется несколько раз, реально что будет один объект
🍁 Jaŭhien
Pavel
Pavel
тогда всё корректно
Tishka17
🤔
Nikolay
Зачем таксисту знать как работает автомобиль?
Tishka17
С другой стороны никто ничего не гарантирует на этот случай
Tishka17
Tishka17
У меня True
🤔
Tishka17
Tishka17
Литералы хоть и разные, из них было создано одно число
Tishka17
Потому что точность флоата не позволяет их отличить
Tishka17
Ещё раз напомню: никаких гарантий, что если вы сейчас получили тру, то и всегда будет тру, нету
🤔
это как с is
Daniil
угу
Pavel
🤔
is только для None 🙂
Tishka17
И да, в интерактивном режиме литералы парсятся построчно. А не пофайлово
Daniil
🤔
и False True
🤔
Tishka17
это как с is
Ну is по сути и проверяет совпадение id
Tishka17
Tishka17
Я выше написал
🤔