Я пытаюсь написать функцию обогревателя, но у меня есть несколько трудностей. Я довольно новичок в Python.ошибка с elif и если заявления
Я хочу, чтобы мой нагреватель работал в течение 15000 секунд, но за первые 120 секунд (включая 120) Я хочу, чтобы он следовал линейному пути T = 0.0804 * t + 16.081
, а затем через 120 секунд я хочу, чтобы он оставался постоянным для остальных оставшихся времени при конечной температуре, найденной из линейного уравнения.
Код я написал ниже, который я получаю сообщение об ошибке с
import math, numpy as np
from random import *
a = 0.0804
time = range(15001)
for time in xrange(15001):
if 0 < = time < = 120:
Temp = a * np.array(time) + 18.3
elif time > 121:
Temp = Temp[120]
Ошибки:
TypeError
Traceback (most recent call last)
/Library/Python/2.7/site-packages/ipython-1.0.0_dev-py2.7.egg/IPython/utils/py3compat.pyc in execfile(fname, *where)
202 else:
203 filename = fname
--> 204 builtin.execfile(filename, *where)
/Users/mariepears/Desktop/heaterfunction.py in <module>
() 16 print T
17 elif t>121:
---> 18 T=T[120]
TypeError: 'int' object is not subscriptable`
хорошо, какие ошибки? (и я даже не знаю, что сказать о ваших именах переменных) – Doorknob
Пожалуйста, отредактируйте его в вопросе, чтобы он был на самом деле читабельным. – Doorknob
@MariePears Это, безусловно, улучшит читаемость, если вы отредактируете это в свой вопрос. – glglgl