6.2. Data Type for True/False

In order for us to build code that can make decisions, we need to understand how programming languages represent true and false.

Example

If we run the following code, we would see in the following output.

1
2
3
4
print('dog' == 'cat')
print(3 < 4)
print(3 > 10)
print('dog' != 'cat')

Console Output

False
True
False
True

In the code above, we make four comparisons and then print the results to the console. Python evaluates each comparison as being either True or False.

  1. In line 1, the equality operator == compares the strings 'dog' and 'cat'. Since these are NOT the same, the comparison returns the value False.

  2. In line 2, the operator < compares the values of 3 and 4. Since 3 is indeed less than 4, comparison returns the result True.

  3. The comparison in line 3 returns False, since 3 is NOT larger than 10.

  4. In line 4, the != operator stands for “not equal”, so 'dog' != 'cat' returns True, while something like 3 != 3 would return False.

6.2.1. Identify True and False

Recall that the type() function tells us the data type of what’s inside the ().

1
2
3
4
5
print(3 < 4)
print(type(3 < 4))

print('dog' == 'cat')
print(type('dog' == 'cat'))

Console Output

True
<class 'bool'>
False
<class 'bool'>

In the previous chapter, we learned about three data types—int, float, and string. The first two deal with numbers, while string deals with collections of characters.

We can now add the data type bool, which stands for boolean value, to our list.

6.2.1.1. Boolean Values

There are only two boolean values—True and False.

Note

Capitalization matters! Since Python is case-sensitive, true and false are NOT valid boolean values.

The values True and False are NOT strings. We can see this by printing another set of type() results:

Example

1
2
3
print(type(True))
print(type("True"))
print(True == "True")

Console Output

<class 'bool'>
<class 'str'>
False

Putting quotes around boolean values ("True" and "False") makes them strings, just like "1234" is a string rather than an int data type.

Line 3 shows that even though they look similar, True and "True" are NOT the same! str and bool are different data types.

6.2.1.2. Data Type Review

  1. The string (str) data type represents a collection of characters.

  2. The integer (int) data type represents a whole number.

  3. The float (float) data type represents a decimal value.

  4. The boolean (bool) data type represents True or False.