DEV Community

Cover image for F-strings in Python
Chris Bongers
Chris Bongers

Posted on • Originally published at

F-strings in Python

The other day I wrote an article about Formatting strings in Python, and I got a couple of responses saying I should look into f-strings in Python.

F-strings are a more readable way to format strings.
And, they are faster!

Using f-strings in Python

Although the format option we discussed in the previous article is not a bad way or not working way, it's just not the optimal way. It's easy to make mistakes and can be hard to read with multiple variables.

F-strings can help us with that.
To use an f-string, we must prefix an f to a string.

Enter fullscreen mode Exit fullscreen mode

I hear you think, why not just use a string, and yes, you would be right in this use case.

However, let's see how to pass variables to them and see the true power.

name = "Chris"
age = 32
print(f"{name} is {age} years old")
# Chris is 32 years old
Enter fullscreen mode Exit fullscreen mode

Way more accessible, since we already have the variables, to me, it's super clear what's happening and how we are using them.

Similar to variables, we can even invoke expressions.

print(f"What is 5 x 5? {5 * 5}")
# What is 5 x 5? 25
Enter fullscreen mode Exit fullscreen mode

Besides that, we could try to pass in a function even.

def greet(name):
    return f"Hi there {name}"

name = "Chris"
# Hi there Chris
Enter fullscreen mode Exit fullscreen mode

With this, I want to thank everyone for introducing f-strings to me, and they will be my string formatting tool in the future 👍.

Thank you for reading, and let's connect!

Thank you for reading my blog. Feel free to subscribe to my email newsletter and connect on Facebook or Twitter

Top comments (2)

steelwolf180 profile image
Max Ong Zong Bao

Yes f strings is super useful when you have multiple variables. It works for dict or list as well but it will be double quotes than a single quote when you're doing that.

dailydevtips1 profile image
Chris Bongers

Thanks for that addition! Loving them so far ❤️