所以我遇到了一个问题,我有一段有效的代码,但只有在不与Function一起使用时才有效。
完整的故事是,我必须创建一个程序,要求提供文件(包含不含税的价格。例如39,15,56,19,122,31,78)。然后它要求用户插入销售税,然后加税免税。
代码如下所示:
filename = input("Please insert filename: ")
salestax = int(input("Please insert % of sales tax: ")
taxfree = int(input("Please insert sum of tax-free: ")
file = open(filename)
sum = 0
for line in file:
sum += float(line) * (1 + salestax/100)
file.close()
sum = round(sum, 2)
print("Total with taxes " + str(sum))
但问题是当我尝试用Function创建相同的代码块时,它不会起作用。这不会是一个问题,但一个标准是必须使用一个函数来计算税收。
还有一件事。我怎么能用增加的销售税来总结数字呢?例如,该文件包含价格:6,17,79,200,54,36。并且插入免税是35.然后我向他们添加销售税,我需要回报总和只有大于插入的价格免税号码。
我使用了IF语句和> = taxfree,但它仍然给了我总和也有较小的数字或0 - 之间没有任何东西
答案 0 :(得分:0)
所以我得到了它,并认为我也在这里发布答案:
def price_withTax(price_withoutTax, percent):
return float(price_withoutTax) * (1+percent/100)
filename = input("Please insert filename: ")
salestax = int(input("Please insert % of sales tax: ")
taxfree = int(input("Please insert sum of tax-free: ")
sum = []
file = open(filename)
for line in file:
sum += [price_withTax(line, salestax)]
file.close()
total = 0
totalWithTax = 0
for line in sum:
total += line
if line >= taxfree:
totalWithTax += line
tax = totalWithTax - totalWithTax/(1 + salestax/100)
total = round(total, 2)
tax = round(tax, 2)
print(“Total with taxes “ + str(total))