开始使用免费开始使用

运输模型:定义生成器

做得很好!您已经用 Python 方法定义了模型的输入、输出和各个过程。现在,是时候把生成器组合起来,用它来按顺序执行所有模型过程。

本练习是课程的一部分

Python 中的离散事件模拟

查看课程

练习说明

  • 调用之前创建的 road_travel() 函数(用于计算公路行驶时间),并记录其完成所需的时间。
  • 调用之前创建的 wait_traffic_light() 函数(用于计算在红绿灯处的等待时间),并记录其完成所需的时间。

交互式实操练习

通过完成这段示例代码来试试这个练习。

def all_processes(env, inputs):
    road_stretch, distance_total, traffic_light = 0, 0, 0
    while True:

        road_stretch += 1
        
        # Call function calculates road travel time
        distance, distance_total = ____(inputs, distance_total)
        yield env.____(distance/inputs['Speed_limit_ms'])
        print(f"> Road Stretch #{road_stretch} \nLength = {distance} m , Cumulative distance travelled = {distance_total} m , Total time elapsed = {env.now} sec")

        traffic_light += 1
        
        # Call function that calculates waiting time at a traffic light
        waitTime_traffic_light_sec = ____(inputs, distance_total)
        yield env.____(waitTime_traffic_light_sec)
        print(f"> Traffic Light #{traffic_light} \nWait time = {waitTime_traffic_light_sec} sec, Time lapsed = {env.now} sec")
编辑并运行代码