Home > Enterprise >  In python, what does x = y == "true" do?
In python, what does x = y == "true" do?

Time:11-06

I'm going through my companies code, and there's instances where someone is assigning some variable x to another variable y, followed by == "true".

I'm not following and google is failing me. Do I set x to equal y if y equals "true"? There's no conditional statements (if) and I've never encountered this before. I don't even know how to search for this.

If it was just x = y = z, I would assume that both x and y are being set to the value of z. but a == outside of a conditional is throwing me

CodePudding user response:

It is more obvious if you add parentheses according to operator precedence:

x = (y == "true")

y == "true" is an expression that evalutates to a bool, so it will be True or False. That value is then assigned to x.

Or in more words:

if y == "true":
    x = True
else:
    x = False

CodePudding user response:

x = something assigns the value "something" to x. y == something evaluates to True if the value of y is equal to "something", and evaluates to False if y is not equal to "something".

So, x = y == "true" means "set x to True if y is equal to the string "true". Otherwise set x to False".

  • Related