刚撞墙(作业)的新生calc_num_stoplights?

时间:2018-10-29 00:05:04

标签: python

我一直在学习“编程入门”课程,并且掌握了大多数早期知识。但是,由于我们已经开始使用函数了,因此定义的函数让我有些不知所措,主要是我的信心得到了体现。当前,我们有一个问题,内容如下:

第1部分-红绿灯

Rosie's Road Co.想使用一个函数来计算每个项目要订购的停车灯数量。该函数必须名为calc_num_stoplights,并且必须按顺序使用以下参数:

  • 公路工程的长度(以英里为单位)。
  • 车道数。

您的函数必须返回一个整数,该整数表示要订购的项目的信号灯数量。该功能应为每个十字路口计数2个交通灯,然后为道路的每个车道添加一个交通灯。例如,一个4条车道的交叉路口将需要6个交通信号灯(2条用于交叉路口,每条4条车道各1条)。

到目前为止,我尝试过的最好的方法是

def stoplights_total(lanes):
    stoplights = lanes

def crossing_lights_total(miles):
    crossing_lights = miles * 2

def calc_num_stoplights(miles, lanes):
    road_project_length_miles = (miles)
    number_of_lanes = (lanes)
    total_lights = (int(stoplights_total + crossing_lights_total)*road_project_length)

calc_num_stoplights(miles, lanes)

这是我的错误返回;

  

ccc_5ed52e8979_7381 @ runweb15:〜$ cd; VOC_SELECTED_FILE =“ rosies_road_co.py” / bin / bash -c ../resource/scripts/run.sh
      追溯(最近一次通话):
        
中的第15行中的文件“ /home/ccc_v1_s_CJ0y_141397/asn34792_57/asn34793_1/asnlib.0/public/RUN.py”           exec(源代码)
        
中的文件“”,第23行       NameError:未定义名称“ miles”

请逐步引导我,因为我不是在寻找答案,而是在寻找答案的更多方法。两项功能测试分别是:2车道5英里(应等于20)和4车道2.5英里(应等于12)。谢谢!

1 个答案:

答案 0 :(得分:1)

通过调用一个函数,您要求该函数给您一些回报。因此,您需要在函数中添加return语句。您不必具有很多函数来解决此问题,因为所有数学都可以通过一个简单的函数来解决,请参见以下示例:

def calc_num_stoplights(miles, lanes):

    crossing_lights_total = 2 * miles
    stoplights_total = lanes
    road_project_lenght = miles

    numbOfStoplights = int((stoplights_total + crossing_lights_total) * road_project_lenght)

    return numbOfStoplights

numbOfStoplights = calc_num_stoplights(5, 2)

print numbOfStoplights

通过在函数中返回“ numbOfStoplights”,可以将返回值保存在函数外部的新变量中,如您在return语句正下方所看到的。这样,函数退出的值将保存在“ numbOfStoplights”变量中。然后,您可以通过打印“ numbOfStoplights”来打印值

PS。我不确定数学是否正确,但希望您可以自己解决:)