Попробуйте это. Я использовал этот онлайн-компилятор и получил его для компиляции и возврата правильных десятичных знаков.
pi = 3.1415926
precision = 42
print( "{:.{}f}".format( pi, precision ) )
Взгляните на эту статью .
Еще одно замечание: немного больше, кажется, что многие ненужные конечные нули (например, 10+) приводят к неверным результатам ... например, 10 ** - 20 вернет правильное число с точностью до 20до 36. После 36 значения становятся равными. 000 000 000 000 000 000 009 999 и т. д. Поэтому, если по какой-то причине вы хотите вернуть эти конечные нули, вам может потребоваться реализовать способ обработки этих конечных нулей.