What is a=b=c in python?

python, variables

Solution

This is just a way to declare `a` and `b` as equal to `c`.

>>> c=2
>>> a=b=c
>>> a
2
>>> b
2
>>> c
2

So you can use as much as you want:

>>> i=7
>>> a=b=c=d=e=f=g=h=i

You can read more in Multiple Assignment from this Python tutorial.

Python allows you to assign a single value to several variables simultaneously. For example:

a = b = c = 1

Here, an integer object is created with the value 1, and all three variables are assigned to the same memory location. You can also assign multiple objects to multiple variables. For example:

a, b, c = 1, 2, "john"

Here, two integer objects with values 1 and 2 are assigned to variables a and b, and one string object with the value "john" is assigned to the variable c.

There is also another fancy thing! You can swap values like this: `a,b=b,a`:

>>> a=2
>>> b=5
>>> a,b=b,a
>>> a
5
>>> b
2

Problem

I am quite confused, consecutive equal `=` can be used in python like: ``` a = b = c ``` What is this language feature called? Is there something I can read about that? Can it be generated into 4 equals? ``` a = b = c = d ```

Original source

Related problems