我对 python 中的数据结构很陌生,想知道如何在 python 中模拟指针之类的东西,以便多个结构可以引用和管理同一条数据。
我有以下两个结构
my_list = [1]
my_dictionary = {}
my_dictionary["hello"] = my_list[0]
当我执行以下操作时,我得到了 True
id(my_dictionary["hello"]) == my_list[0]
然而,我怎样才能一次性从字典和列表中强制删除呢?
如果我执行以下操作, my_dictionary 仍然引用 my_list[0] 即 1
del my_list[0]
有没有办法一次性摆脱这两个元素? python 中做这样的链接结构的方法是什么?
这实际上取决于您试图通过交叉引用解决的问题。
假设您的意图是能够通过键有效地定位项目,并按顺序顺序迭代。在这种情况下,无论使用哪种语言,您可能希望避免交叉引用哈希表和数组数据结构,因为更新本质上是线性的。相反,交叉引用哈希表和list可能更有意义。
为此,您可以使用类似的东西llist:
d = {}
l = llist.dllist()
# insert 'foo' and obtain the link
lnk = l.append('foo')
# insert the link to the dictionary
d['foo'] = lnk
相反,假设您的意图是能够有效地通过键定位项目以及通过索引定位。然后您可以使用字典和列表,并在每次修改字典时重建列表。没有真正的理由进行花哨的交叉引用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)