Loading...
Loading...
00:00:00

String Formatting in Python3

In Python 3, there are several ways to format strings, including:

  1. The % operator This method of string formatting uses the % operator to replace parts of a string with values. For example:
    name = "Rahul"
    age = 30
    print("My name is %s and I am %d years old." % (name, age))
    
  2. str.format() method This method of string formatting uses the format() method on strings to replace parts of the string with values. For example:
    name = "Rahul"
    age = 30
    print("My name is {} and I am {} years old.".format(name, age))
    
  3. f-strings f-strings are a newer method of string formatting introduced in Python 3.6. They are a more readable and efficient way to format strings. For example:
    name = "Rahul"
    age = 30
    print(f"My name is {name} and I am {age} years old.")
    

You can use any of the above methods to format strings in Python 3, but the most recommended method is to use f-strings because they are more readable and efficient.

String formatting can be use for string or numbers.

here is the example to demonstrate string formatting -

:< Left Aligns Output Of String Formatting

str_ = 'Hello python {:<5} programmer'
print(str_.format(40))    # output - Hello python 40    programmer

F-String Formatting

In python, f-string is very important string formatting. Using this string formatting we can style the string like c-language . we can add variables within the string as placeholder using { } brackets.

x = 10
str_ = f"Hello python {x+10} programmer"
print(str_)    # output - Hello python 20 programmer

{:B} Represent Binary Numbers

Using {:b} , we can represent a number in binary format in a string .

str_ = "In binary 7 is {:b}"
print(str_.format(7))    # In binary 7 is 111

Represent Numbers In Hex Format

{:x} we can represent the number in string as hex value .

str_ = "In binary 7 is {:x}"
print(str_.format(7))    # In hex 7 is 7

Represent In Decimal Format

we can format the other types of numbers in decimal .

str_ = "In Decimal 101 is {:d}"
print(str_.format(0b101))    # In Decimal 101 is 5

{:,} Number Format In String

we can format the number as follow - every thousand places seperated by comma . we can use other seperater .

str_ = "This is big {:,} number"
print(str_.format(38939879289999))   # output- This is big 38,939,879,289,999 number

String Percentage Format

we can represent number in Percentage in a string .

str_ = "you have learn core python {:0%}"
print(str_.format(0.6))          # output - you have learn core python 60.000000%
str_ = "you have learn core python {:.0%}"
print(str_.format(0.6))         # output - you have learn core python 60%

String Formatting Symbols

Python String Formatting symbols
:< Left aligns output of string formatting with spaces
:> Right aligns output of string formatting with spaces
:^ Center aligns output of string formatting with spaces
:= Align the sign to the left most position
:+ add plus sign for repersent positive value
:- add minus sign for represent negative value
: Add extra space for positive value and add minus sign for negative value
:, Adding comma as a thousand separator
:_ Adding underscore as a thousand separator
:b Represent Binary format
:d Represent Decimal format
:e Scientific notations Represent in lowercase 'e'
:E Scientific notations Represent in lowercase 'E'
:f Represent number in point lowercase format as 'nf' and 'nan'
:F Represent number in point, in uppercase format as 'INF' and 'NAN'
:g Used for General format for lowercase notations
:G General format for uppercase notations
:o Octal format notations
:x Hex format notations in lower case
:X Hex format notations in upper case
:n General Number format
:% Percentage format for numbers