【发布时间】:2016-07-12 13:16:00
【问题描述】:
例如:
x = (1, 2)
a,b = x
现在我想在x 是某个不是列表或元组的类的实例的情况下完成此操作。简单地覆盖 __getitem__ 或 __getslice__ 不起作用:
class Test(object):
def __getitem__(self, key):
return 1
a,b = Test()
产生ValueError: too many values to unpack。我可以在不继承list 或tuple(或它们各自的UserX 类)的情况下完成这项工作吗?或者这只是一些我无法使用的底层魔法?
【问题讨论】:
标签: python python-2.7 iterator