我正在尝试对齐列中的变量。我希望它们在每一列中都左对齐。但是,当我对齐输入时,我认为它是根据字符的长度对齐的。问题是输入因使用而异,所以我不能仅在空格中进行硬编码来对齐它们。不知道如何解决它。任何帮助表示赞赏。
我尝试阅读许多其他文章,但是即使我的代码建议正确,我也无法弄清楚如何正确设置对齐方式。另外,如果使用的话,我正在使用Trinket.io。
a1 = input("Enter Item 1: ")
monthly1 = float(input("Enter " + a1 + " Monthly Amount: $"))
b1 = ("$%.2f" % (monthly1))
yearly1 = float(monthly1*12)
c1 = ("$%.2f" % (yearly1))
a2 = input("Enter Item 2: ")
monthly2 = float(input("Enter " + a2 + " Monthly Amount: $"))
b2 = ("$%.2f" % (monthly2))
yearly2 = float(monthly1*12)
c2 = ("$%.2f" % (yearly2))
print "==============================="
print ("%-20s %-10s %-10s" % (a1, b1, c1))
print ("%-20s %-10s %-10s" % (a2, b2, c2))
复制粘贴输出:
Enter Item 1: Rent
Enter Rent Monthly Amount: $ 750
Enter Item 2: Gas
Enter Gas Monthly Amount: $ 50
===============================
Rent $750.00 $9000.00
Gas $50.00 $600.00
答案 0 :(得分:0)
我在想,也许您希望美元金额正确对齐。因此,将打印内容更改为:
print ("%-20s %10s %10s" % (a1, b1, c1))
print ("%-20s %10s %10s" % (a2, b2, c2))
我得到:
Enter Item 1: Rent
Enter Rent Monthly Amount: $750
Enter Item 2: Gas
Enter Gas Monthly Amount: $50
===============================
Rent $750.00 $9000.00
Gas $50.00 $600.00
那是你的追随吗?