метка времени Python не обновляет

мой 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
1
задан 7 February 2018 в 15:45

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
0
ответ дан 8 December 2019 в 02:26

Другие вопросы по тегам:

Похожие вопросы: