мой time.ctime()
не изменяется при выполнении моей программы каждый 5-секундный.
Как я могу зафиксировать его?
Моя программа:
import random
import time
n = 1
future = time.time() + 600
for x in range(5): # program execute 5 times
print(n)
print time.ctime(future)
sensor1 = {'ID': 'A', 'float1': ['A' + str(i) for i in range(1, 17)]}
print(sensor1)
count = 16 # represents 16 float readings
for i in range(0, count):
r = random.random() # generates random real number between 0 and 1
print(r)
sensor2 = {'ID': 'B', 'float1': ['B' + str(i) for i in range(1, 17)]}
print(sensor2)
count = 16 # represents 16 float readings
for i in range(0, count):
r = random.random() # generates random real number between 0 and 1
print(r)
time.sleep(5) # to wait a second
n = n + 1
Ваша проблема состоит в том, что Вы устанавливаете будущее фиксированного значения, и Вы используете то же фиксированное значение снова и снова.
Можно распечатать текущее время с помощью:
print time.ctime()
Можно распечатать текущее время + 600 использований:
print time.ctime(time.time() + 600)
руководство времени Python указывает:
time.ctime([secs])
Преобразуйте время, выраженное в секундах с эпохи к строке, представляющей местное время. Если secs не обеспечивается или Ни один, текущее время, как возвращено
time()
используется.ctime(secs)
эквивалентноasctime(localtime(secs))
. Информация о локали не используетсяctime()
.
Пример кода (например, сохраненный как time_prints.py
):
import time
for x in range(5): # program execute 5 times
print time.ctime()
time.sleep(5)
Пример произвел:
$ python time_prints.py
Thu Feb 8 14:37:41 2018
Thu Feb 8 14:37:46 2018
Thu Feb 8 14:37:51 2018
Thu Feb 8 14:37:56 2018
Thu Feb 8 14:38:01 2018