缺少1个必需的位置参数python

2024-06-08 14:04:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我对编程很陌生,解决方案可能很简单,但如果有人能解释发生了什么,那就意味着有很多:)

代码:

def loan (loan_amount,number_of_weeks):
    return (loan_amount/number_of_weeks)

loan_amount= int(input("Enter an amount: "))

number_of_weeks= int(input("Enter a number of weeks: "))


loan(loan_amount/number_of_weeks)

print ("you must repay",loan,"per week to repay a loan of",loan_amount,"in",number_of_weeks,"weeks")

错误代码

Enter an amount: 5
Enter a number of weeks: 5
Traceback (most recent call last):
  File "C:/Users/Ethan/PycharmProjects/untitled1/Loan.py", line 7, in <module>
    loan(loan_amount/number_of_weeks)
TypeError: loan() missing 1 required positional argument: 'number_of_weeks'

Tags: of代码inannumberinput编程解决方案
2条回答

你把贷款定义为接受两个参数。所以,你应该这样称呼它:

loan(loan_amount, number_of_weeks)

抬头看,你可能想把结果赋给一个变量,然后再打印出来。打印loan打印函数对象表示。

是的,在对loan()的调用中,有一个斜线,其中应该有一个逗号。

loan(loan_amount/number_of_weeks)

应该是

loan(loan_amount,number_of_weeks)

另外,在下一行中,您将打印“loan”,但这并没有设置为任何值。您可以将loan的输出设置为变量:

loan_var = loan(loan_amount/number_of_weeks)
print ("you must repay",loan_var,"per week to repay a loan of",loan_amount,"in",number_of_weeks,"weeks")

或者直接在print语句中调用它:

print ("you must repay",loan(loan_amount/number_of_weeks),"per week to repay a loan of",loan_amount,"in",number_of_weeks,"weeks")

相关问题 更多 >