Convert NoneType to a string in Python

avatar

Borislav Hadzhiev

Last updated: Jun 15, 2022

banner

Photo from Unsplash

Convert NoneType to a string in Python #

Use the boolean OR operator to convert NoneType to a string in Python, e.g. result = None or "". The boolean OR operator will return the value to the right-hand side because the value to the left (None) is falsy.

main.py
my_var = None result_1 = my_var or '' print(result_1) # 👉️ "" result_2 = my_var or 'hello' print(result_2) # 👉️ "hello"

We used the boolean or operator to return a string if the value to the left is falsy.

All values that are not truthy are considered falsy. The falsy values in Python are:

  • constants defined to be falsy: None and False.
  • 0 (zero) of any numeric type
  • empty sequences and collections: "" (empty string), () (empty tuple), [] (empty list), {} (empty dictionary), set() (empty set), range(0) (empty range).
The expression x or y returns the value to the left if it's truthy, otherwise the value to the right is returned.

Since None is a falsy value, the expression None or y is always going to return y.

Note that the expression x or y would also return y if x is any of the other falsy values, e.g. 0, False, or an empty list, dict or tuple.

Alternatively, you can use an if statement to check if the variable stores None and reassign it to a string.

main.py
country = None if country is None: country = "" print(country) # 👉️ ""

Checking for None is much more explicit and the if block will only run if the variable stores a None value.

The condition wouldn't be satisfied if the variable stores any other falsy value.

You can also use a one-liner if/else statement.

main.py
country = None country = "" if country is None else country print(country) # 👉️ ""

If the variable stores None, it gets set to an empty string, otherwise it gets set to its current value.

main.py
country = 'Germany' country = "" if country is None else country print(country) # 👉️ "Germany"
I wrote a book in which I share everything I know about how to become a better, more efficient programmer.
book cover
You can use the search field on my Home Page to filter through all of my articles.