从Python列表存储和检索对象
我刚开始学习Python,遇到一个问题,就是不知道怎么把一个对象存储到数组或列表里,也不知道怎么去访问它。
我试过这样做:
class NodeInfo:
def __init__(self, left, value, right):
self.l = left
self.r = right
self.v = value
tree[0] = NodeInfo(0,1,2)
tree[0].l = 5
tree[0].r = 6
tree[0].v = 7
但是当我试着给这个变量赋值或者读取它的时候,出现了以下错误:
tree[0] = NodeInfo(0,1,2)
NameError: name 'tree' is not defined
我到底哪里做错了?或者在Python中有没有其他方法可以把对象放进数组或列表里并读取呢?
1 个回答
8
你需要先创建一个列表,然后使用 append
方法把一个元素添加到列表的末尾。
tree = []
tree.append(NodeInfo(0,1,2))
# or
tree = [NodeInfo(0,1,2)]