def perm(data):
if len(data) == 1:
return [data]
r = []
for i in range(len(data)):
s = data[:i] + data[i+1:]
p = perm(s)
for x in p:
r.append(data[i:i+1]+x)
return r
arr = [1,2,3]
print(perm(arr))