[我用Python编写了一条条件语句,该语句根据当时相应州的税率来提高价格。
在下面的示例中,我将purchase_amount设置为$ 17,将状态设置为CA。税率为7.5%。这是我制定它的方式,以获得正确的答案,即$ 18.275。
state = "CA"
purchase_amount = 17
if state == "CA":
tax_amount = .075
elif state == "MN":
tax_amount = .095
elif state == "NY":
tax_amount = .085
total_cost = tax_amount * purchase_amount + purchase_amount
但是,我看到有人使用不同的表述,如下所示,以获得相同的准确答案。
if state == "CA":
tax_amount = .075
total_cost = purchase_amount*(1+tax_amount)
我以前从未见过以这种方式应用过百分比。
我的主要问题是...整数1甚至来自哪里?
我的第二个问题是...为什么在将它乘以purchase_amount之前将其添加到tax_amount?
这特别令人震惊,因为尽管很高兴得出相同的正确答案,但我希望充分阅读其他人的编码样式。
非常感谢您的帮助!
您是否在问如何进行代数,如代数2代数。这将称为分布规则,通过排除公因子,以下几行是相同的。
tax_amount * purchase_amount + purchase_amount
purchase_amount * ( tax_amount + 1 )
这是数学运算,如果您想在数字上加上数字的%,则可以通过两种方式来实现:
((17 * .075)+ 17 = 18.275
或他们的方式:
17 * 1.075 = 18.275
这两者在功能上都是相同的计算,只是表达方式不同。