Hey! If you love Python and building Python apps as much as I do, let's connect on Twitter or LinkedIn. I talk about this stuff all the time!

How to Use F String in Python

Learn how to use f-strings, a powerful string formatting feature in Python, to make your code more readable and efficient. …


Updated May 8, 2023

Learn how to use f-strings, a powerful string formatting feature in Python, to make your code more readable and efficient.

Introduction

F-strings are a unique way to format strings in Python. They allow you to embed expressions inside string literals, making it easy to create dynamic output without the need for concatenation or interpolation. In this article, we’ll explore how to use f-strings in Python, and provide examples of their usage.

Definition

F-strings are a type of string literal that allows you to embed expressions using the f prefix. They were introduced in Python 3.6 as a more readable and efficient alternative to traditional string formatting methods like %, .format(), or str.format().

Step-by-Step Explanation

Basic Usage

The basic syntax for an f-string is simple:

name = "John"
age = 30
print(f"Hello, my name is {name} and I am {age} years old.")

In this example, we define two variables name and age, and then use them in an f-string to create a dynamic output. The {} placeholders are used to embed the expressions inside the string.

Expressions Inside F-Strings

You can embed various types of expressions inside f-strings, including:

  • Variables: $variable_name
  • Function calls: func()
  • Arithmetic operations: 2 + 3
  • Conditional statements: if condition: value

Here’s an example that uses some of these features:

greeting = "Hello" if age > 18 else "Hi"
print(f"{greeting}, my name is {name} and I am {age} years old.")

In this code, we use a conditional statement to determine the greeting based on the age variable. The result of the expression is then embedded inside an f-string.

Named Placeholders

F-strings also support named placeholders using the = operator:

name = "John"
age = 30
print(f"Hello, my name is {name=} and I am {age=}.")

In this example, the name and age variables are assigned to their respective placeholders using the = operator. This can be useful when you need to provide additional context or explanations for the values being used.

Advanced Topics

While basic usage is straightforward, there are some advanced topics related to f-strings that deserve attention:

  • Line breaks: You can use newline characters (\n) inside f-strings to create multiline output.
  • Custom formatting: F-strings can be combined with other string formatting methods like .format() or str.format() for more complex cases.

Conclusion

F-strings are a powerful feature in Python that simplifies string formatting and makes code more readable. With this guide, you should now understand the basics of f-string usage and how to apply them in various scenarios. Whether you’re a beginner or an experienced developer, mastering f-strings will help you write more efficient and maintainable code.

Step-by-step exercises

  • Create an f-string that embeds a variable name and prints “Hello, my name is John.”
  • Use an f-string to create a dynamic greeting based on the current time of day.
  • Apply an f-string with named placeholders to print a formatted version of your personal details.

Stay up to date on the latest in Python, AI, and Data Science

Intuit Mailchimp