Creating an Empty String in Python

In this article, we will explore how to create an empty string in Python and understand its usage. We will also discuss different ways to create an empty string in Python and when to use them. …

Author: Jeremy Morgan
Published: December 10, 2023


Today’s sponsor is Depot. Depot is a remote container build service that’s half the cost of GitHub Actions runners and up to 40x faster than other build services. Try it for free.


In this tutorial we’ll look at a few different ways to create empty strings in Python. We’ll also talk about why we would need to create empty strings and when to use them.

Here’s the video version of this tutorial:

Creating an empty string in Python is not as hard as it seems. Here are a few common approaches:

1. Using Double Quotes:

my_string = ""

This approach creates an empty string by enclosing nothing between two sets of double quotes. This is the most common method for creating an empty string in Python. It initializes the variable but there’s nothing there.

2. Using Single Quotes:

my_string = ''

The second approach creates an empty string by enclosing nothing between two single quotes. This is like using double quotes, only single quotes makes it a literal. So if you plan on using this as a literal later you can drop in the data and go.

3. Using Triple Quotes:

my_string = """"""

The third approach creates an empty string by enclosing nothing between three sets of double quotes. Triple quotes are usually meant for multiline strings, so if you plan on adding multline line data later you can use these.

4. Using the str() Function:

my_string = str()

By making a call to str() which does not contain any arguments, this method creates an empty string. This is another way to initialize the variable without adding any data to it.

5. Using the chr() Function:

my_string = chr(0)

This is one of the ways in which an empty string can be made by calling the chr() function with a 0 ASCII code that corresponds to null character. For example, when creating a string with no characters whatsoever. This is a common way of creating an empty string.

6. Using the ord() Function:

my_string = ord('')

Using ord(), you simply pass it an empty string through which it creates an empty string. This means if you want a certain character converted into its ASCII value yet, you don’t wish to specify what its default value should be then this is the right way to go. There really isn’t much of a reason to use this.

Now that we know how to create an empty string in Python using different approaches, let us look at some practical examples.

Use Cases for Empty Strings

Empty strings are very useful in many instances where absence of data or null value is indicated. Here are some common uses:

1. Initializing Variables:

name = ""
age = 0

In this example, we initialize two variables name and age. The name variable is initialized to an empty string because there is no name provided, and the age variable is initialized to zero because there is no age provided.

This is a great way to check for defaults. If later in your program you see that name is empty you know the data has never been placed into the variable.

2. Checking for Empty Strings:

if my_string == "":
    print("This string is empty")
else:
    print("This string is not empty")

In this example, we check if a variable my_string is an empty string using the equality operator. If it is an empty string, we print out a message that says “This string is empty”. Otherwise, we print out a message that says “This string is not empty”.

3. Initialing variables for a wider scope.

In the following program we are initializing name in the main scope of the application. It’s used inside the check_name() function, but if we declare it in that function it’s scope will only be limited within check_name. By declaring it outside of the scope we can used name elsewhere. If we don’t have any data for it yet, we can initialize it with nothing, and work with it later.

name = ''

def check_name():

    if name.strip() == "":
        print("Please enter a name.")
    else:
        print(f"Hello, {name}!")

check_name()

Conclusion

Creating an empty string in Python is a simple task that can be done in various ways. Knowing how to create an empty string and its usage is crucial for any Python developer. We have discussed different methods of creating an empty string in Python and some common use cases for them. Understanding these concepts will help you write more efficient and readable code.


Today’s sponsor is Depot. Depot is a remote container build service that’s half the cost of GitHub Actions runners and up to 40x faster than other build services. Try it for free.