-2

他们有什么方法可以通过数据直接引用 Python 中的列表对象吗?

在 list[{'id':'', 'value':{}},{}] 我想设置一个 'id' 的值,而不是迭代列表。

4

2 回答 2

0

如果给定

mylist = ['id', value]

您可以value通过分配来更改

mylist[1] = new_value

虽然这个问题对我来说不是很清楚,但听起来你几乎想要在这里使用字典而不是列表,如果你要拥有标识符/值对。

于 2012-09-01T22:27:34.833 回答
0

不,你不能。您只能通过引用而不是数据来引用某些内容。在你的情况下:

mylist = ['id', value]

mylist[1]是对内存中某个点的引用(指针),其中包含数据value。您不能单独引用数据(好吧,从技术上讲,您可以,只是没有任何意义)。

但是,您可以通过以下方式获得对数据的引用

mylist[mylist.index(value)]

在这种情况下,mylist.index(value)获取第一次出现的索引value而不“遍历列表”。但是,您应该知道,即使这样,Python 也在底层“迭代列表”(取决于 Python 的实现)。这只是数组在二进制级别上的工作方式;你必须在某个时候迭代。(见http://docs.python.org/py3k/library/stdtypes.html#sequence-types-str-bytes-bytearray-list-tuple-range

于 2012-09-01T22:49:14.527 回答