Content · Programming · Python

Python f-String Formatting: Width, Precision, and Alignment

Format specifications inside f-strings control alignment, width, sign and precision. Use a fixed decimal precision for display, but remember that rounding the display does not make the underlying float exact. Learn.

2 views Published Oct 17, 2026 Updated Oct 18, 2026 Admin

This guide explains f-String Formatting: Width, Precision, and Alignment through a focused example and practical reasoning. No prior knowledge of this specific operation is required.

Understanding the Concept


Format specifications inside f-strings control alignment, width, sign and precision. Use a fixed decimal precision for display, but remember that rounding the display does not make the underlying float exact.

When You Would Use This


Align item names and prices in a small console table.

Step-by-Step Example


product_name = "Notebook"
unit_price = 4.75
print(f"{'Item':<12}{'Price':>8}")
print(f"{product_name:<12}{unit_price:>8.2f}")

How the Example Works


The name is left-aligned to width 12, while the numeric price is right-aligned to width 8 with two digits after the decimal point.

Example Output


Item           Price
Notebook        4.75

Try It Yourself


Add a second item with a longer name and inspect alignment.

Common Beginner Mistakes


  • Confusing < and > alignment markers.
  • Using precision on an integer without checking its supported format options.
  • Assuming all Unicode symbols occupy one display column.

Key Takeaways


  • Format specifications inside f-strings control alignment, width, sign and precision.
  • The name is left-aligned to width 12, while the numeric price is right-aligned to width 8 with two digits after the decimal point.
  • Avoid this mistake: Confusing < and > alignment markers.
Share this resourceSend this page to someone who may find it useful.