clothes_total = tot1 + tot2 + tot3 + tot4+ tot5
clothes_total1 = tot1 + tot2 + tot3+ tot4 + tot5
tot_price = tax * (clothes_total + shipping + gift_number)
tot_price1 = tax * (clothes_total1 * 0.85 + shipping + gift_number)
tot_price2 = tax * (clothes_total2 * 0.85 + shipping + gift_number - 30)
print "<h4>Original Price: $ %s </h4>" % clothes_total
if clothes_total < 150:
print "<h4> TOTAL : %s </h4>" % tot_price
else clothes_total1 > 200:
print "15% Discount + $30 off: $"
print 0.85 * (clothes_total - 30)
print "<h4> THIRTY: $ %s </h4>" % tot_price2
这是我的代码行,但在else clothes_total1 > 200:
下,我一直得到:
语法错误无效
不知道问题是什么。有人可以帮助我吗?谢谢。
答案 0 :(得分:3)
应该是elif
而不是else
:
elif clothes_total1 > 200:
来自docs:
if_stmt ::= "if" expression ":" suite
( "elif" expression ":" suite )*
["else" ":" suite]
而不是使用tot1 + tot2 + tot3 + tot4+ tot5
,我认为你应该使用一个列表。
示例:强>
tot = [12,56,....] #some values
然后使用sum
:
clothes_total = sum(tot)
如果列表中有超过5个项目,并且您只想要前5个项目的总和,那么请使用切片:
clothes_total = sum(tot[:5])
答案 1 :(得分:1)
else
不能有谓词。
使用elif
代替else
。
elif clothes_total1 > 200:
答案 2 :(得分:0)
else
应该等于elif
。
这是因为在Python中,else
充当一种“全能” - 它不需要任何额外的要求,实际上不允许它们。如果您要为else子句指定条件,则必须使用elif
。
答案 3 :(得分:0)
否则没有条件,但是elif确实如此。 如果你使用else,那意味着,如果一切都失败了,那就去做吧。