python 上的缩进
Indentation on python
我的 python 程序不是 运行。我确定我遗漏了一些东西,但我很确定我只是缩进错了。谁能帮我一把?谢谢!
def main():
sales = getSales()
advancedPay = getAdvancedPay()
commRate = DetermineCommRate(sales)
pay = (sales * commRate) - advancedPay
print("The pay is $". format(pay, ",.2f"), sep="")
if pay < 0:
print("The salesperson must reimburse")
print("the company")
def getSales():
monthlySales = float(input("Enter the monthly sales: "))
return monthlySales
def getAdvancedPay():
print("Enter the amount of advanced pay or ")
print("Enter 0 if no advanced pay was given. ")
advancedPay - float(input("Advanced pay: ")
return advancedPay
def DetermineCommRate
if sales < 10000:
rate = 0.10
elif sales >= 10000 and sales <= 14999.99:
rate = 0.12
elif sales >= 15000 and sales <= 17999.99:
rate = 0.14
elif sales >= 18000 and sales <= 21999.99:
rate = 0.16
else:
rate = 0.18
return rate
main()
我的 python 程序不是 运行。我确定我遗漏了一些东西,但我很确定我只是缩进错了。谁能帮我一把?谢谢!
感谢您的评论;我删除了无效的东西并继续编写程序。
您遗漏了几个语法错误。您需要关闭 advancedPay 输入中的括号,完成 DetermineCommRate 的声明,缩进 if pay 块,然后将该声明(参数的编号和名称)与使用 (一个参数)。
您还遇到了最终打印的格式问题。再次检查示例并修复规范以打印 pay.
def main():
sales = getSales()
advancedPay = getAdvancedPay()
commRate = DetermineCommRate(sales)
pay = (sales * commRate) - advancedPay
print("The pay is $ {0:8.2f}". format(pay), sep="")
if pay < 0:
print("The salesperson must reimburse")
print("the company")
def getSales():
monthlySales = float(input("Enter the monthly sales: "))
return monthlySales
def getAdvancedPay():
print("Enter the amount of advanced pay or ")
print("Enter 0 if no advanced pay was given. ")
advancedPay = float(input("Advanced pay: "))
return advancedPay
def DetermineCommRate(sales):
if sales < 10000:
rate = 0.10
elif sales >= 10000 and sales <= 14999.99:
rate = 0.12
elif sales >= 15000 and sales <= 17999.99:
rate = 0.14
elif sales >= 18000 and sales <= 21999.99:
rate = 0.16
else:
rate = 0.18
return rate
main()
据我所知,sales
是 main()
中的局部变量,而您正试图在 DetermineCommRate
中访问它,并且您在定义中存在语法错误该功能
def DetermineCommRate(sales):
目前,您正在将销售额传递给它,但不接受它。
此外,您的下一行应在 main()
中缩进到 运行
if pay < 0:
print("The salesperson must reimburse")
print("the company")
这一行也有语法错误
advancedPay = float(input("Advanced pay: "))
我的 python 程序不是 运行。我确定我遗漏了一些东西,但我很确定我只是缩进错了。谁能帮我一把?谢谢!
def main():
sales = getSales()
advancedPay = getAdvancedPay()
commRate = DetermineCommRate(sales)
pay = (sales * commRate) - advancedPay
print("The pay is $". format(pay, ",.2f"), sep="")
if pay < 0:
print("The salesperson must reimburse")
print("the company")
def getSales():
monthlySales = float(input("Enter the monthly sales: "))
return monthlySales
def getAdvancedPay():
print("Enter the amount of advanced pay or ")
print("Enter 0 if no advanced pay was given. ")
advancedPay - float(input("Advanced pay: ")
return advancedPay
def DetermineCommRate
if sales < 10000:
rate = 0.10
elif sales >= 10000 and sales <= 14999.99:
rate = 0.12
elif sales >= 15000 and sales <= 17999.99:
rate = 0.14
elif sales >= 18000 and sales <= 21999.99:
rate = 0.16
else:
rate = 0.18
return rate
main()
我的 python 程序不是 运行。我确定我遗漏了一些东西,但我很确定我只是缩进错了。谁能帮我一把?谢谢!
感谢您的评论;我删除了无效的东西并继续编写程序。
您遗漏了几个语法错误。您需要关闭 advancedPay 输入中的括号,完成 DetermineCommRate 的声明,缩进 if pay 块,然后将该声明(参数的编号和名称)与使用 (一个参数)。
您还遇到了最终打印的格式问题。再次检查示例并修复规范以打印 pay.
def main():
sales = getSales()
advancedPay = getAdvancedPay()
commRate = DetermineCommRate(sales)
pay = (sales * commRate) - advancedPay
print("The pay is $ {0:8.2f}". format(pay), sep="")
if pay < 0:
print("The salesperson must reimburse")
print("the company")
def getSales():
monthlySales = float(input("Enter the monthly sales: "))
return monthlySales
def getAdvancedPay():
print("Enter the amount of advanced pay or ")
print("Enter 0 if no advanced pay was given. ")
advancedPay = float(input("Advanced pay: "))
return advancedPay
def DetermineCommRate(sales):
if sales < 10000:
rate = 0.10
elif sales >= 10000 and sales <= 14999.99:
rate = 0.12
elif sales >= 15000 and sales <= 17999.99:
rate = 0.14
elif sales >= 18000 and sales <= 21999.99:
rate = 0.16
else:
rate = 0.18
return rate
main()
据我所知,sales
是 main()
中的局部变量,而您正试图在 DetermineCommRate
中访问它,并且您在定义中存在语法错误该功能
def DetermineCommRate(sales):
目前,您正在将销售额传递给它,但不接受它。
此外,您的下一行应在 main()
中缩进到 运行if pay < 0:
print("The salesperson must reimburse")
print("the company")
这一行也有语法错误
advancedPay = float(input("Advanced pay: "))