毎日Learning

学んだことを共有します

P14 (*) リストの各要素を2連続させる。

def dupli(lista):
    return reduce(lambda x,y: x+[y,y], lista, []) if isinstance(lista, list) else None

if __name__ == "__main__":
    print dupli("a") == None
    print dupli([]) == []
    print dupli(["a"]) == ["a", "a"]
    print dupli(["a", "b"]) == ["a", "a", "b", "b"]
    print dupli(["a", "b", "c"]) == ["a", "a", "b", "b", "c", "c"]
    print dupli(["a", "b", "c", "c", "d"]) == ["a", "a", "b", "b", "c", "c", "c", "c", "d", "d"]