这是我的代码,但我不明白如何正确对齐数字的边缘,因为...... 如果写的数字很大,就会出界。我重新编写了代码,但最终没有任何效果,它给出了错误。代码中还有一个注释掉的部分可以工作,但您需要以某种方式将其与边缘对齐。这是代码:
a = str(input()) # Название
b = int(input()) # Цена
c = int(input()) # Вес
d = int(input()) # Кол-во денег
#print(f'{"Чек":=^32}\nТовар:{"": >30}{a}\nЦена:{"": >30}{c}кг * {b}руб/кг\nИтого:{"": >30}{(b*c)}руб\nВнесено:{"": >30}{d}руб\nСдача:{"": >30}{(d-b*c)}руб\n{"":=^35}')
print(f'{"Чек":=^32}')
print(f'Товар:{"": ^{(a)}}{a}')
print(f'Цена:{"": ^{(b)}}{(c)}кг * {(b)}руб/кг')
print(f'Итого:{"": ^{(b*c)}}{(b*c)}руб')
print(f'Внесено:{"": ^{(d)}}{(d)}руб')
print(f'Сдача:{"": ^{(d-b*c)}}{(d-b*c)}руб')
print(f'{"":=^32}')
UPD:我更改了代码,但它仍然不对齐
a = str(input()) # Название
b = int(input()) # Цена
c = int(input()) # Вес
d = int(input()) # Кол-во денег
print(f'{"Чек":=^35}')
print(f'{"Товар:": <35}{a}')
print(f'{"Цена:": <35}{c}кг * {b}кг/руб')
print(f'{"Итого:": <35}{b*c}руб')
print(f'{"Внесено:": <35}{d}')
print(f'{"Сдача": <35}{d-b*c}')
print(f'{"":=^35}')

尽管作者已经写道他在帮助下解决了这个问题
rjust,但我仍然决定发布这个答案。也许这对某人有用:结论:
像这样的东西会起作用。“价格”行最棘手的事情是两个嵌套的格式字符串。