弱于 weakref
kivy compare to weakref
如何比较 kivy weakref 是否指向给定对象?
设置:
>>> my_obj
<__main__.Marker object at 0x610054ee8>
>>> my_list
[<weakref at 0x6100662c8; to 'Marker' at 0x610054ee8>]
我的列表具体 touch.grab_list
来自 kivy 触摸事件,并包含对所有抓取的小部件的弱引用。
我想做类似 if my_obj in my_list:
的事情并得到 True
但显然这个 returns False
因为 weakref 和 my_obj
是不同的对象。
正确的方法是什么?
抱歉,我现在觉得自己很蠢,只是偶然发现了解决方案。
A weakref returns 调用时的对象。所以我们可以使用它和 map
:
>>> my_obj in map(lambda x: x(), my_list)
True
如何比较 kivy weakref 是否指向给定对象?
设置:
>>> my_obj
<__main__.Marker object at 0x610054ee8>
>>> my_list
[<weakref at 0x6100662c8; to 'Marker' at 0x610054ee8>]
我的列表具体 touch.grab_list
来自 kivy 触摸事件,并包含对所有抓取的小部件的弱引用。
我想做类似 if my_obj in my_list:
的事情并得到 True
但显然这个 returns False
因为 weakref 和 my_obj
是不同的对象。
正确的方法是什么?
抱歉,我现在觉得自己很蠢,只是偶然发现了解决方案。
A weakref returns 调用时的对象。所以我们可以使用它和 map
:
>>> my_obj in map(lambda x: x(), my_list)
True