String Alignment and Padding in Python
String Alignment and Padding in Python
In Python, you can align and pad strings to make them visually consistent in output. The main methods used for this are:
str.ljust()– Left-justify a string.str.rjust()– Right-justify a string.str.center()– Center-align a string.str.zfill()– Pad with leading zeros.
strip()– Removes leading and trailing characters.lstrip()– Removes leading (left-side) characters.rstrip()– Removes trailing (right-side) characters.
1. str.ljust(width, fillchar)
Left-aligns the string and fills remaining space with a specified character (default: space).
Syntax:
python
string.ljust(width, fillchar=' ')
width: Total length of the padded string.fillchar(optional): Character used for padding (default: space).
Example:
python
text = "Python" print(text.ljust(10)) # Output: 'Python ' (padded with spaces) print(text.ljust(10, '-')) # Output: 'Python----'
2. str.rjust(width, fillchar)
Right-aligns the string and fills remaining space with a specified character.
Syntax:
python
string.rjust(width, fillchar=' ')
- Same parameters as
ljust().
Example:
python
text = "Python" print(text.rjust(10)) # Output: ' Python' print(text.rjust(10, '*')) # Output: '****Python'
3. str.center(width, fillchar)
Centers the string and pads both sides equally.
Syntax:
python
string.center(width, fillchar=' ')
Example:
python
text = "Python" print(text.center(10)) # Output: ' Python ' print(text.center(10, '=')) # Output: '==Python=='
4. str.zfill(width)
Pads a numeric string with leading zeros.
Syntax:
python
string.zfill(width)
width: Minimum length of the resulting string.
Example:
python
num = "42"
print(num.zfill(5)) # Output: '00042'
num = "-3.14"
print(num.zfill(8)) # Output: '-0003.14' (zeros after the sign)
String strip() Methods in Python
Python provides several methods to remove leading and trailing characters (like whitespace or specific characters) from strings. These methods are:
strip()– Removes leading and trailing characters.lstrip()– Removes leading (left-side) characters.rstrip()– Removes trailing (right-side) characters.
1. strip([chars])
Removes both leading and trailing specified characters (default: whitespace).
Syntax:
python
string.strip([chars])
chars(optional): A string specifying the characters to remove. If omitted, removes whitespace (,\t,\n).
Examples:
python
text = " Hello, Python! "
print(text.strip()) # Output: "Hello, Python!" (removes leading & trailing spaces)
text = "----Hello----"
print(text.strip('-')) # Output: "Hello" (removes '-' from both ends)
text = "abcHelloabca"
print(text.strip('abc')) # Output: "Hello" (removes 'a', 'b', 'c')
2. lstrip([chars])
Removes leading (left-side) characters.
Syntax:
python
string.lstrip([chars])
Examples:
python
text = " Hello "
print(text.lstrip()) # Output: "Hello " (removes leading spaces)
text = "###Hello###"
print(text.lstrip('#')) # Output: "Hello###" (removes '#' from left)
3. rstrip([chars])
Removes trailing (right-side) characters.
Syntax:
python
string.rstrip([chars])
Examples:
python
text = " Hello "
print(text.rstrip()) # Output: " Hello" (removes trailing spaces)
text = "Hello!!!"
print(text.rstrip('!')) # Output: "Hello" (removes '!' from right)
Key Points
- If no
charsargument is given, whitespace (,\t,\n) is removed. - The methods do not modify the original string (strings are immutable in Python). Instead, they return a new string.
- The
charsargument treats all characters individually, not as a substring.
Example: Removing Multiple Characters
python
text = "xyxHello yx"
print(text.strip('xy')) # Output: "Hello " (removes 'x' and 'y' from both ends)
Common Use Cases
- Cleaning User Input:pythonuser_input = ” user@example.com ” cleaned_input = user_input.strip() print(cleaned_input) # Output: “user@example.com”
- Removing Trailing Newlines (
\n):pythonline = “Hello\n” print(line.rstrip()) # Output: “Hello” - Stripping Specific Characters:pythonprice = “$$99.99$$” print(price.strip(‘$’)) # Output: “99.99”
Summary Table
| Method | Removes From | Example (text = "--Hello--") | Output |
|---|---|---|---|
strip() | Both sides | text.strip('-') | "Hello" |
lstrip() | Left side | text.lstrip('-') | "Hello--" |
rstrip() | Right side | text.rstrip('-') | "--Hello" |
These methods are extremely useful for data cleaning, parsing, and formatting. Would you like more examples or use cases? 😊