Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Выравнивание матрицы на ЯП Python

Егор Гришин Знаток (328), на голосовании 12 месяцев назад
https://imgur.com/a/0dRJJW8 - Массив набран из вещественных чисел, 18 строчкой я вывожу матрицу на экран, но прием '%4d' % arr[i][j] выводит на экран целые числа.
https://imgur.com/a/Sx68LSh - Убрал в print '%4d', убедился в том, что числа и вправду вещественные.
Кто разбирается, как так же красиво выровнять вещественные числа, чтобы при выводе не творился бардак, как на втором скрине?
Голосование за лучший ответ
Chromatic Scale Искусственный Интеллект (122995) 1 год назад
Скопируйте код сюда или же на GitHub. Пока что рекомендации такие:

Чтобы выровнять вещественные числа в массиве при выводе на экран в ЯП Python, можно воспользоваться форматированием строк с помощью метода format().

Вместо использования %4d для выравнивания целых чисел, вы можете использовать {:>7.2f} для выравнивания вещественных чисел. Здесь > означает выравнивание по правому краю, 7 означает ширину поля, а .2f означает вывод числа с двумя знаками после запятой.

Пример кода для выравнивания вещественных чисел в массиве:
 arr = [[1.2345, 2.3456, 3.4567], [4.5678, 5.6789, 6.7890]] 
for i in range(len(arr)):
for j in range(len(arr[i])):
print('{:>7.2f}'.format(arr[i][j]), end=' ')
print()
В этом примере arr содержит две строки с тремя вещественными числами в каждой. Результат вывода на экран будет выровнен по правому краю с двумя знаками после запятой для каждого числа.

Вывод:
    1.23    2.35    3.46  
4.57 5.68 6.79
Здесь каждое число выровнено по правому краю в поле шириной 7 символов с двумя знаками после запятой. Если число имеет больше знаков до запятой или после запятой, оно будет выровнено соответственно.
Егор ГришинЗнаток (328) 1 год назад
благодарю
Похожие вопросы