Skip to content Skip to sidebar Skip to footer

What Does This Syntax Mean In Python?

What does the comma in the declaration below mean? Does it define two variables at once? resp, content = client.request(request_token_url, 'GET')

Solution 1:

It creates a tuple. In this case, the tuple is of two variables, which get assigned the result from request().

request() returns a tuple, which is then automatically unpacked into the left-hand tuple during assignment.

If you had just

result = client.request(request_token_url, "GET")

that would assign the tuple directly to result. Then you would be able to access the response at result[0], the first value in the tuple, and the content would be in result[1].

Solution 2:

That's called tuple unpacking. In python, you can unpack tuples like this:

a, b = (1, 2)

See that on the right we have a tuple, packing values, and they are automatically "distributed" to the objects on the left.

If a function returns a tuple, in can be unpacked as well:

>>>deft():...return (1, 2)...>>>a, b = t()>>>a
1
>>>b
2

That's what's happening in your code.

Post a Comment for "What Does This Syntax Mean In Python?"