I remember I once seen a operator which is able to decompose a list in python.
for example
[[1],[2],[3]]
by applying that operator, you get
[1], [2], [3]
what is that operator, any help will be appreciated.
If you want to pass a list of arguments to a function, you can use *
, the splat operator. Here's how it works:
list = [1, 2, 3]
function_that_takes_3_arguments(*list)
If you want to assign the contents of a list to a variable, you can list unpacking:
a, b, c = list # a=1, b=2, c=3
You can use the tuple
function to convert a list to a tuple. A tuple with three elements isn't really any different from three separate elements, but it gives a handy way to work with all three together.
li = [[1], [2], [3]]
a, b, c = tuple(li)
print a # [1]
The correct answer to the OP's question: "what is that operator" which transforms the list [[1],[2],[3]]
to [1], [2], [3]
is tuple()
since [1], [2], [3]
is a tuple. The builtin function tuple
will convert any sequence or iterable to a tuple, although there is seldom a need to do so since, as already pointed out, unpacking a list is as easy as unpacking a tuple:
a, b, c = [[1],[2],[3]]
gives the same result as
a, b, c = tuple([[1],[2],[3]])
This may not be what the OP wanted but it is the correct answer to the question as asked.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With