Example 1: f string in python
# f-strings are short for formatted string like the following
# you can use the formatted string by two diffrent ways
# 1
name = "John Smith"
print(f"Hello, {name}") # output = Hello, John Smith
# 2
name = "John Smith"
print("Hello, {}".format(name)) # output = Hello, John Smith
Example 2: f string python
num_01, num_02, num_03 = 1, 2, 3
print(f"Numbers : {num_01}, {num_02}, {num_03}")
"""
>>> Numbers: 1, 2, 3
"""
Example 3: python f string
import math
print('[[fill]align] | f\'{"text":10}\' | ', f'{"text":10}') # text
print('[[fill]align] | f\'{"text":>10}\' | ', f'{"text":>10}') # text
print('[[fill]align] | f\'{"text":^10}\' | ', f'{"text":^10}') # text
print('[[fill]align] | f\'{"text":#>10}\' | ', f'{"text":#>10}') # ######text
print('[[fill]align] | f\'{"text":#<10}\' | ', f'{"text":#<10}') # text######
print('[[fill]align] | f\'{"text":#^10}\' | ', f'{"text":#^10}') # ###text###
print('[[fill]align] with numbers | f\'{12345:0=10}\' | ', f'{12345:0=10}') # 0000012345
print('[[fill]align] with numbers | f\'{-12345:0=10}\' | ', f'{-12345:0=10}') # -000012345
print('[[fill]align] with numbers | f\'{12345:010}\' | ', f'{12345:010}') # 0000012345
print('[[fill]align] with numbers | f\'{-12345:010}\' | ', f'{-12345:010}') # -000012345
print('[.precision] | f\'{math.pi:.2f}\' | ', f'{math.pi:.2f}') # 3.14
print('[grouping_option] | f\'{1000000:,.2f}\' | ', f'{1000000:,.2f}') # 1,000,000.00
print('[grouping_option] | f\'{1000000:_.2f}\' | ', f'{1000000:_.2f}') # 1_000_000.00
print('[sign] (+/-) | f\'{12345:+}\' | ', f'{12345:+}') # +12345
print('[sign] (+/-) | f\'{-12345:+}\' | ', f'{-12345:+}') # -12345
print('[sign] (+/-) | f\'{12345:+10}\' | ', f'{12345:+10}') # +12345
print('[sign] (+/-) | f\'{-12345:+10}\' | ', f'{-12345:+10}') # -12345
print('[sign] (+/-) | f\'{12345:+010}\' | ', f'{12345:+010}') # +000012345
print('[sign] (+/-) | f\'{-12345:+010}\' | ', f'{-12345:+010}') # -000012345
print('[b] (binary) | f\'{10:b}\' | ', f'{10:b}') # 1010
print('[o] (octal) | f\'{10:o}\' | ', f'{10:o}') # 12
print('[x] (hexadecimal) | f\'{100:x}\' | ', f'{100:x}') # 64
print('[#b] (with notation base) | f\'{10:#b}\' | ', f'{10:#b}') # 0b1010
print('[#0] (with notation base) | f\'{10:#o}\' | ', f'{10:#o}') # 0o12
print('[#x] (with notation base) | f\'{10:#x}\' | ', f'{10:#x}') # 0xa
print('[e] (scientific notation) | f\'{345600000000:e}\' | ', f'{345600000000:e}') # 3.456000e+11
print('[c] (character type) | f\'{65:c}\' | ', f'{65:c}') # A
print('percentage (multiply by 100) | f\'{0.25:0%}\' | ', f'{0.25:0%}') # 25.000000%
print('percentage (multiply by 100) | f\'{0.25:.0%}\' | ', f'{0.25:.0%}') # 25%