谁能看看这个代码来解决这个问题吗

2024-09-29 23:17:00 发布

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

这是一个来自codecadamy的练习,下面的程序是找出一个假期的总成本,其中包括旅行成本、飞机成本以及一些开销。关于这个问题,在上一个函数中,我输入了3个参数days,city和spending money,但是当我单击submission按钮时,它会显示我以正确的方式输入参数。在

enter image description hereenter image description here


Tags: 函数程序citysubmission参数方式days按钮
2条回答

您的函数rental_car_cost(days)没有返回任何内容。你的意思可能是这样的:

def rental_car_cost(days):
    rental = 40*days
    if days >= 7:
        rental -= 50
    elif days >= 3 or days < 7:
        rental -= 20
    return rental

最新版本

  • TypeError抱怨添加int和{}是由于下面MarkG指出的问题:因为没有显式地从rental_car_cst返回任何内容,而是隐式返回None(注意,这种行为与Perl或Ruby不同,这两种方法都返回对最后一个表达式的求值结果在函数中)。因此,您正在向None添加一个整数,这是没有意义的。

  • invalid syntax错误是由于Python不允许在return语句中使用赋值表达式,因此return rental -= 50是无效的(两行之后,-= 20也是一样)。由于rental无论如何都是一个局部变量,所以赋值不做任何事情,所以您可以只使用return rental - 50。或者,您可以去掉else无条件地return rental,在if块中正确设置rental

    if days >= 7:
        rental -= 50
    elif days >= 3 or days < 7:
        rental -= 20
    return rental
    

第一期(旧版)

我没有使用过CodeAcademy,所以我不太熟悉导致特定错误消息的原因,但是您看到的消息可能是由于Python解释器从未看到对trip_cost的调用,所以您当然没有“以正确的方式输入参数”

正如我在评论中提到的,原因是您的print trip_cost...行是缩进的,所以它位于trip_cost函数的内部。因此,解释器看到import math后面是四个函数定义,然后脚本结束……因此没有一个函数被实际调用过,解释器不做任何事情就退出。在

相关问题 更多 >

    热门问题