我正在创建一个树类,我希望__getitem__
方法获取一个元组参数,所以我像这样使用它:
t[1, 2, 3]
然而,当我想获得根值时,我需要给它一个空元组,当我做
时t[]
我收到语法错误:
>>> t[]
SyntaxError: invalid syntax
有没有办法解决这个问题?
答案 0 :(得分:2)
你的__getitem__
可能需要一个参数,它应该是一个元组。
当您将其称为t[1, 2, 3]
时,,
运算符会创建元组。但是,Python解释器无法知道你想要t[]
中的元组(看起来你试图不向__getitem__
传递任何参数)。 []
opeartor语法需要在其中包含一个表达式,因此您得到SyntaxError
(在这种情况下使用函数调用语法会导致TypeError
。
使用t[()]
。
答案 1 :(得分:1)
尝试将其称为t[()]
,而不是t[]