Question: ```py
# x = 1
# x = 0

if x:
    print(f'x = {x}, and therefore it\'s truthy')
else:
    print(f"x = {x}, and therefore it's falsey")

```

Hi everyone, I am a little confused with this exercise. The code doesn't have any explanation as when the system should print `truthy` or `falsey` yet it knows when to print it. Why is that?

Answer: 
I think it's just a way to show that `0` is interpreted as `False` in a boolean expression like a comparison or an `if` etc, and `1` (or any other non-zero number) is interpreted as `True`.

Edit: and like said in some comments, the fact that a value is "truthy" doesn't mean that is strictly equal to True
for example:

```py
print(1 == True) # True
print(0 == False) # True
print(2 == True) # False
print(not not 2) # True
print(not 0) # True
print(not not 0) # False
print(0 and True) # False
print(2 and False) # False
print(2 and True) # True
print(0 or 2) # True
# etc ...

```
Its all in the `if x:` line.

To execute this line, I like to think that python translates it to:

`if bool(x):`

because `bool()` will only ever return `True` or `False`, then the first option is only ever taken when the result is `True`.

See this [answer](https://stackoverflow.com/a/39984051) for details of a comprehensive list of values which are considered `Falsey`.