У меня возникли проблемы с написанием правильного кода для печати (T, sol_h).
sol_h — это np. массив того же размера, что и T.
При печати (T) вы получите нечто похожее на:
0.00
5.00
10.00
15.02
20.03
25.05
30.06
35.07
40.08
45.08
50.10
...
Код ниже печатает только T:
start_time = time.time()
impact_time= sol.t_events[3] # = 154.75 s
sol_h = sol.y[0]
# solution from a previous function
While True:
current_time = time.time()
elapsed_time = current_time - start_time
T = '{:.02f}'.format(elapsed_time)
time.sleep(5)
print(T)
if elapsed_time > impact_time:
print ("Impact has occured")
break
print (Loop has finished)
Этот код печатает только h:
for h in sol_h:
print(h)
# Result
0.0
242.18277624405562
1016.2986152430877
2397.4567532549913
4463.395396560339
7289.10447523776
...
Есть ли способ напечатать (T, h), чтобы это выглядело так?
0.00, 0.0
5.00, 242.18277624405562
10.00, 1016.2986152430877
15.02, 2397.4567532549913
20.03, 4463.395396560339
25.05, 7289.10447523776
... ...
Я готов изменить весь код, чтобы получить правильный print(T,h)
T
— это не массив, это строка, содержащая отформатированное прошедшее время.о да. это верно.