У меня возникают проблемы с вычислением ошибки в том, как я объединяю строку в python.
Цель состоит в том, чтобы отформатировать числа в строку, которую я могу напечатать с одинаковой длиной.
Я написал следующий код:
def numPrint(number,roundplace):
num = round(number, roundplace)
if num > 0:
output = ('+' + str(num))
elif num < 0:
output = (str(num))
else:
output = (' 0.' + '0' * roundplace)
if len(output) < (3 + roundplace):
output2 = (output + '0')
else:
output2 = output
return output2
print(numPrint(0.001, 3))
print(numPrint(0, 3))
print(numPrint(-0.0019, 3))
print(numPrint(-0.01, 3))
print(numPrint(0.1, 3))
Я ожидаю, что он напечатает:
+0.001
0.000
-0.002
-0.010
+0.100
однако я получаю
+0.001
0.000
-0.002
-0.010
+0.10
Как добавить «0» к последнему, чтобы оно заработало?