如何找到Python/Django模型对象的内存地址?
一个普通的东西,我可以用如何找到Python/Django模型对象的内存地址?,python,django,django-models,Python,Django,Django Models,一个普通的东西,我可以用 o.__repr__() 看到像这样的东西 '<__main__.A object at 0x9d78fec>' “” 但是,比方说,Django用户只是返回 <User:bob> 我如何才能看到其中一个的实际地址,或者比较两个这样的模型对象是否实际上是同一个对象?使用id()函数。或者等效地只比较“obj1是obj2”。id()将返回对象的标识(通常实现为地址),这对于在同一时间点存在的两个对象来说是唯一的。但是,检查两个对象是否
o.__repr__()
看到像这样的东西
'<__main__.A object at 0x9d78fec>'
“”
但是,比方说,Django用户只是返回
<User:bob>
我如何才能看到其中一个的实际地址,或者比较两个这样的模型对象是否实际上是同一个对象?使用id()函数。或者等效地只比较“obj1是obj2”。id()
将返回对象的标识(通常实现为地址),这对于在同一时间点存在的两个对象来说是唯一的。但是,检查两个对象是否相同的明显方法是使用专门为此设计的操作符:is
即
您可以获取任何对象的id:
a = object()
print hex(id(a))
虽然对于CPython来说,这是对象的地址,但我相信这并不能保证(在其他实现中,如IronPython,可能会有所不同)。相同的id表示相同的对象
a = object()
print hex(id(a))