Subscript and superscript are important when you are dealing with different types of formulas. They are useful in math, chemistry, etc.
In Python, there is a method called maketrans. It creates a one to one mapping table with characters and their replacements.
This method will replace 1 to A, 2 to B, and 3 to C. Let’s take a look.
In this case, numbers 1 and 2 are going to be replaced, but 4 doesn’t have a replacement, so it will stay 4.
Similarly, you can convert numbers to subscript. Let’s use this formula for ethanol:
This code will replace all numbers to subscript, as it should be in the chemical formula.
You can also convert a number to superscript. In this case, we are going to use a formula to calculate the area of a circle.
In our example, the formula is written this way:
We are going to convert 2 to superscript, and PI to π. We can’t convert PI with maketrans because the first two maketrans arguments should be the same length. In this case, let’s use the replace function.
The result is:
Unicode subscripts and superscripts
Another way to achieve the same result is to use the Unicode subscripts and superscripts.
The letter “x” represents a subscript number.
The letter “x” represents a superscript number.
This is the full table of Unicode characters:
Let’s implement it into Python.
The result is the same as before:
Now, let’s create the second formula:
U+03C0 is a Unicode character for the greek letter PI and U+00B2 for square root. As you can see from the table, the power of 2 and 3 have different notation than numbers from 4 to 9.