我正在学习Python,我正在尝试使用函数和用户输入编写一个简单的书店程序。它需要参数(书籍,价格)和打印“订单:'你的书选择'花费'x美元'”但我无法让它工作。你能看看我的代码并帮帮我吗?
def book_store(book,price):
book_choice = input("Enter books title: ")
book_price = input ("Enter books price: ")
return "Title: " + book_choice + ", costs " + book_price
print (book_store(book_choice, book_price))
NameError Traceback(最近一次调用 最后)in() 10 11 ---> 12打印(book_store(book_choice,book_price))
NameError:名称'book_choice'未定义
答案 0 :(得分:0)
您收到book_choice未定义的错误。这是因为您在函数内部而不是在函数外部定义book_choice。你现在拥有它的方式,你的函数应该采用零参数。但是如果你想传递book_choice和book_price的参数,你必须在函数之外定义那些变量。
答案 1 :(得分:0)
您的代码现在是多余的,可以是:
def book_store():
book_choice = input("Enter books title: ")
book_price = input("Enter books price: ")
return "Title: " + book_choice + ", costs " + book_price
print(book_store())
OR:
def book_store(book, price):
return "Title: " + book + ", costs " + price
book_choice = input("Enter books title: ")
book_price = input("Enter books price: ")
print (book_store(book_choice, book_price))
两个版本都有效。
还要确保使用python 3,否则输入不会返回字符串。
答案 2 :(得分:-1)
def book_store(book,price):
book_choice = input("Enter books title: ")
book_price = input ("Enter books price: ")
return "Title: " + book_choice + ", costs " + book_price
print (book_store(book_choice, book_price))
book_choice和book_price应该是这里的东西,也许是尚未定义的变量。 您正在函数book_store中传递这些变量。 这是关于错误,而不清楚你想要实现什么。
也许你可以简单。使用此印刷品。
print(book_store())