1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | class Foo: def __init__(self, name, data): self.name = str(name) self.data = list(data) foo1 = Foo('abc', [1, 2, 3]) foo2 = Foo('def', [4, 5, 6]) foo3 = Foo('ghi', [7, 8, 9]) my_list = [foo1, foo2, foo3] from itertools import chain def test(name, data): data = frozenset(data) return name, list(chain.from_iterable(data & set(foo.data) for foo in my_list if foo.name == name)) print test('def', [2, 3, 4, 5]) |
Y2xhc3MgRm9vOgogICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIGRhdGEpOgogICAgICAgIHNlbGYubmFtZSA9IHN0cihuYW1lKQogICAgICAgIHNlbGYuZGF0YSA9IGxpc3QoZGF0YSkKCgpmb28xID0gRm9vKCdhYmMnLCBbMSwgMiwgM10pCmZvbzIgPSBGb28oJ2RlZicsIFs0LCA1LCA2XSkKZm9vMyA9IEZvbygnZ2hpJywgWzcsIDgsIDldKQoKbXlfbGlzdCA9IFtmb28xLCBmb28yLCBmb28zXQoKZnJvbSBpdGVydG9vbHMgaW1wb3J0IGNoYWluCgpkZWYgdGVzdChuYW1lLCBkYXRhKToKICAgIGRhdGEgPSBmcm96ZW5zZXQoZGF0YSkKICAgIHJldHVybiBuYW1lLCBsaXN0KGNoYWluLmZyb21faXRlcmFibGUoZGF0YSAmIHNldChmb28uZGF0YSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGZvbyBpbiBteV9saXN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGZvby5uYW1lID09IG5hbWUpKQogICAgICAgICAgICAgICAgICAKcHJpbnQgdGVzdCgnZGVmJywgWzIsIDMsIDQsIDVdKQ==
-
upload with new input
-
result: Success time: 0.01s memory: 6400 kB returned value: 0
('def', [4, 5])


