З Python <3 (наприклад, 2.6 [див. Коментарі] або 2.7), це можна зробити двома способами.
# Option one
older_method_string = "%.9f" % numvar
# Option two
newer_method_string = "{:.9f}".format(numvar)
Але зауважте, що для версій Python вище 3 (наприклад, 3,2 або 3,3) варіант 2 є кращим .
Для отримання додаткової інформації щодо другого варіанту пропоную це посилання щодо форматування рядків з документації Python .
А для отримання додаткової інформації щодо першого варіанту цього посилання буде достатньо та містить інформацію про різні прапори .
Python 3.6 (офіційно випущений у грудні 2016 року), додав f
рядковий літерал, див. Тут додаткову інформацію , яка розширює str.format
метод (використання фігурних брекетів таких, що f"{numvar:.9f}"
вирішує початкову проблему), тобто
# Option 3 (versions 3.6 and higher)
newest_method_string = f"{numvar:.9f}"
вирішує проблему. Перевірте відповідь @ Or-Duan для отримання додаткової інформації, але цей метод швидкий .