Open In App

Pad or fill a string by a variable in Python using f-string

Last Updated : 02 Jan, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

In Python, we can pad or fill a string with a variable character to make it a specific length using f-strings. We can pad strings to the left, right, or centre by using f-strings with a variable as the padding character.

Let’s understand with the help of an example:

Python
s = 'GFG'
pad_char = '-'
width = 12

padded_string = f'{s:{pad_char}^{width}}'
print(padded_string)

Output
----GFG-----

Explanation:

  • f'{s:{pad_char}^{width}}’ centers the string and pads both sides with the specified padding character (pad_char), ensuring the total width is width.

Padding String to the Right

If we want to pad a string to the right, we can align it to the left and use a variable for the padding character. This means the string will stay at the start, and the padding character will be added after it until the string reaches the desired total length.

Python
s = 'GFG'
char = '*'

# Pad string to the right using a variable
c = f"{s:{char}<10}"  
print(c)

Output
GFG*******

Padding String to the Left

If we want to pad a string to the left, we can align it to the right. This means the string will move to the far right, and the padding character will be added before it until the string reaches the desired total length.

Python
s = 'GFG'
char = '*'  # Padding character

# Pad string to the left using a variable
left_padded = f"{s:{char}>10}"
print(left_padded)

Output
*******GFG

Padding String to the Center

If we want to center the string and add padding on both sides, we can use the ^ symbol in f-strings. This ensures that the string will be placed in the middle, with equal padding on both sides (or as close to equal as possible).

Python
s = 'GFG'

# Padding character
char = '*'  

# Pad string to the center using a variable
center_padded = f"{s:{char}^10}"  
print(center_padded)

Output
***GFG****


Next Article
Article Tags :
Practice Tags :

Similar Reads