## Problem Formulation and Solution Overview

In Python, the Boolean is a built-in data type. These values represent `True`

(1) or `False`

(0). Also referred to as Truthy or Falsy values. In this article, we will articulate how these values behave.

*Ms. Darnell, a Math Teacher at Dion Junior High, has given her class a Math exam based on True/False answers. Each student’s results return to her as a List of Boolean values. *

## Method 1: Use List Comprehension

This method uses List Comprehension to loop through a List of Boolean values and converts them from a `True/False`

Boolean value to an integer representation of 1 or 0.

student_exam = [True, False, True, True, True, True, True, False, True, True] student_tally = [int(x) for x in student_exam] print(student_tally)

Above, declares a List of `True/False`

values based on a single student’s results from the Math exam. These results save to `student_exam`

.

Next, List Comprehension is used to loop through and examine each element of `student_exam`

(a Boolean List) and assign an integer value of one (1) for `True`

and zero (0) for `False`

. These results are saved to `student_tally`

and output to the terminal.

`[1, 0, 1, 1, 1, 1, 1, 0, 1, 1]` |

How can we retrieve the actual grade?

student_grade = sum(x for x in student_tally if x == 1) print(student_grade)

Above uses Python’s built-in `sum()`

function and passes one (1) argument, `student_tally`

to loop through and calculate the number of times the integer value one (1) is found.

This result saves to `student_grade`

and is output to the terminal.

8 |

## Method 2: Use map() and list()

This method uses `map()`

in conjunction with a `list`

to convert a List of Boolean to Integers.

student_exam = [True, False, True, True, True, True, True, False, True, True] student_tally = list(map(int, student_exam)) print(student_tally)

Above, declares a List of `True/False`

values based on a single student’s results from the Math exam. These results save to `student_exam`

.

Next, `student_exam`

is converted to a `map()`

object. If output to the terminal at this point, the output would be similar to below:

`<map object at 0x000001C4D34DB550>` |

This object is then converted to a `list`

and saved to `student_tally`

.

`[1, 0, 1, 1, 1, 1, 1, 0, 1, 1]` |

π‘**Note:** To retrieve the actual grade, call the `sum()`

function used in Method 1.

## Method 3: Use NumPy multiply()

This method imports the NumPy library and uses `multiply()`

function to convert a List of Boolean values to Integers.

To run this example error-free, the NumPy library must be installed and imported. Click here for installation instructions.

import numpy as np student_exam = np.array([True, False, True, True, True, True, True, False, True, True]) student_tally = np.multiply(student_exam, 1) print(student_tally)

Above, imports the NumPy library.

Next, `numpy.array() `

is called and passed a List (array) of Booleans. This saves to `student_exam`

.

Next, `numpy.multiply()`

is passed two (2) arguments: a List of Boolean values (`student_exam`

) and a number to multiply each element with (`1`

). This operation executes, saves to `student_tally`

and is output to the terminal.

` [1 0 1 1 1 1 1 0 1 1]` |

How can we retrieve the actual grade using `NumPy`

?

student_grade = np.sum(student_tally) print(student_grade)

Above, uses NumPy’s `sum()`

function and passes one argument, `student_tally`

. The `True`

values (1) are calculated and output to the terminal.

8 |

## Method 4: Use a Pandas DataFrame

This method creates a Pandas DataFrame from a List of Booleans and converts them to Integers.

To run this example error-free, the Pandas library must be installed and imported. Click here for installation instructions.

import pandas as pd student_exam = [True, False, True, True, True, True, True, False, True, True] df = pd.DataFrame(student_exam, columns=['Exam_Results']) df['Exam_Results'] = df['Exam_Results'].astype(int) print(df)

Above, imports the Pandas library.

Next, a List of `True`

/`False`

values is declared based on a single student’s results from the Math exam. These results save to `student_exam`

.

The following line passes a DataFrame with two (2) arguments, the List created earlier (`student_exam`

) and a column name (‘`Exam Results`

‘). Then a DataFrame is created and the results save to `df`

.

The next line converts the `True/False`

values in the original column to Integer values, saves back to the original column `df['Exam_Results']`

and output to the terminal.

Exam Results | |

0 1 2 3 4 5 6 7 8 9 | 1 0 1 1 1 1 1 0 1 1 |

How can we retrieve the actual grade using a Pandas DataFrame?

student_grade = df['Exam_Results'].sum() print(student_grade)

Above, uses Pandas `sum()`

function to calculate the grade and output to the terminal.

8 |

## Summary

## Regex Humor

At university, I found my love of writing and coding. Both of which I was able to use in my career.

During the past 15 years, I have held a number of positions such as:

In-house Corporate Technical Writer for various software programs such as Navision and Microsoft CRM

Corporate Trainer (staff of 30+)

Programming Instructor

Implementation Specialist for Navision and Microsoft CRM

Senior PHP Coder