Мне нужна помощь, чтобы правильно отформатировать эту таблицу

#python

#питон

Вопрос:

Мне нужна помощь в формировании этой таблицы, в которой она выводится только до 3-го знака после запятой для каждой характеристики. Я также хочу, чтобы статистика была прямо под правильной меткой

 player=input("Player name:") hits=int(input("Hits:")) ab=int(input("At Bats:"))  walks=int(input("Walks:"))  hbp=int(input("Hit By Pitch:"))  tb=int(input("Total Bases:"))  ba=hits/ab oBp=(hits walks hbp)/(ab walks hbp) sLg= tb/ab iSo= sLg - ba oPs= oBp   sLg format_string = '{name:9}{avg:4}{obp:5}{slg:4}{iso:4}{ops:4}'   print(format_string.format(name='Player', avg='AVG',obp='OBP',slg='SLG',iso='ISO',ops='OPS'))  print('-' * 64)  print(format_string.format(name=player, avg=ba, obp=oBp, slg=sLg,iso=iSo,ops=oPs))  

введите описание изображения здесь

Комментарии:

1. изображение-это изображение моего текущего вывода

2. С какой проблемой вы сталкиваетесь, когда пытаетесь реализовать это форматирование? Этот сайт ожидает, что у вас будут конкретные вопросы, а не просто запросы на добавление функций в ваш код.

Ответ №1:

Чтобы напечатать только 3 десятичных знака, вы должны ограничить его с помощью поплавка. {:.3f} Кроме того, чтобы ваши ярлыки выглядели аккуратно, я чувствую, что все можно ввести с помощью диктанта, где ключ и значения будут соответствовать друг другу.

Ответ №2:

Если вы хотите двигаться в этом направлении, это может помочь:

 format_string = '{name:9}{avg:4}{obp:5}{slg:4}{iso:4}{ops:4}' format_string_f = '{name:9}{avg:2.1f} {obp:3.1f} {slg:2.1f} {iso:2.1f} {ops:2.1f}'  print(format_string.format(name='Player', avg='AVG',obp='OBP',slg='SLG',iso='ISO',ops='OPS'))  print('-' * 64)  print(format_string_f.format(name=player, avg=ba, obp=oBp, slg=sLg,iso=iSo,ops=oPs))  

Результат