У меня есть кортеж, содержащий как значения строки, так и значения float (которые считываются из txt-файла и вычисляются мной, соответственно), и я хочу записать его в другой файл txt.Как отформатировать строку в python?
variables = (line.split()[0],line.split()[1], velocity) #velocity is a floating number, others are #string
output_file.write('%s %s %4.2f \n' % variables)
Эти линии находятся в цикле. Я хочу, чтобы каждая переменная в каждой строке выравнивалась по правому краю. Как я могу это сделать?
Обратите внимание, что строковые элементы не имеют одинакового символа в каждой строке.
проблема заключается в следующем: я использовал что-то вроде% 5.2f для float. Так он пишет 99.48. Но в следующей строке число равно 100.34. Следующие поплавки не выровнены по правому краю. Мне нужно, чтобы переменные float были выровнены по правому краю :(Как я могу это исправить? – wthimdh
@tgb, в 5.2, 5 - это общий размер, а 2 - это число цифр после десятичного числа. Так как 100.34 уже 6 символов, вы вы переполняете свой размер форматирования. Попробуйте что-то вроде% 10.2f, чтобы увидеть разницу. – tdelaney
Большое вам спасибо ^^ Последний вопрос касается форматирования строк. Строки должны быть выровнены по левому краю, а плавающие числа должны быть выровнены по правому краю Теперь я покрыл поплавки. Но любой намек на выравнивание строк справа? – wthimdh