如何使用结果计算下一个结果,然后再计算下一个结果?
How to use the result to compute the next result and then the next result after that?
我正在尝试使用公式的结果计算下一个结果,然后再计算下一个结果,依此类推。
def waiting(element, start_waiting_time=0, service_time=1.2, interarrival=1, default=0):
if element == 1:
return max((start_waiting_time + service_time - interarrival, 0))
elif element == 0:
return default
def waiting_time(elements, start_time=0):
next_patient_waits = start_time
for i in elements:
next_patient_waits += waiting(i)
print("{:.1f}".format(next_patient_waits))
elements = [1, 1, 1]
waiting_time(elements)
此代码 returns 输出:
# 0.2, 0.4, 0.6
我期待它 return 输出:
#0, 0.2, 0.4
我想将第一个 waiting_time 设置为 0,因为 start_waiting_time 为零。我希望计算机会计算:
#For 1st item in elements: waiting_time = 0
#For 2nd item in elements: waiting_time = (waiting time 1st element) + service_time - interarrival = 0 + 1.2 -1 = 0.2
#For 3rd item in elements: waiting_time = (waiting time 2nd element) + service_time - interarrival = 0.2 + 1.2 -1 = 0.4
您应该在增加 next_patient_waits
之前简单地打印它:
def waiting_time(elements, start_time=0):
next_patient_waits = start_time
for i in elements:
print("{:.1f}".format(next_patient_waits))
next_patient_waits += waiting(i)
我正在尝试使用公式的结果计算下一个结果,然后再计算下一个结果,依此类推。
def waiting(element, start_waiting_time=0, service_time=1.2, interarrival=1, default=0):
if element == 1:
return max((start_waiting_time + service_time - interarrival, 0))
elif element == 0:
return default
def waiting_time(elements, start_time=0):
next_patient_waits = start_time
for i in elements:
next_patient_waits += waiting(i)
print("{:.1f}".format(next_patient_waits))
elements = [1, 1, 1]
waiting_time(elements)
此代码 returns 输出:
# 0.2, 0.4, 0.6
我期待它 return 输出:
#0, 0.2, 0.4
我想将第一个 waiting_time 设置为 0,因为 start_waiting_time 为零。我希望计算机会计算:
#For 1st item in elements: waiting_time = 0
#For 2nd item in elements: waiting_time = (waiting time 1st element) + service_time - interarrival = 0 + 1.2 -1 = 0.2
#For 3rd item in elements: waiting_time = (waiting time 2nd element) + service_time - interarrival = 0.2 + 1.2 -1 = 0.4
您应该在增加 next_patient_waits
之前简单地打印它:
def waiting_time(elements, start_time=0):
next_patient_waits = start_time
for i in elements:
print("{:.1f}".format(next_patient_waits))
next_patient_waits += waiting(i)