猿问

调用Time lib的两个函数导致错误,是否可以解决?

我在一个脚本中有两个代码,每个代码都可以正常运行,但是由于它们都在同一个脚本中调用“时间”库,因此我收到了错误消息


"TypeError: 'module' object is not callable"

但是,单独运行它们(注释掉另一个)会产生两个工作代码段。下面是该代码的示例:请注意有关如何使代码的各个部分正常工作的注释。


from sched import scheduler

from time import time, sleep


## If you comment out this line then run periodically will work fine

import time


import datetime

import random


s = scheduler(time, sleep)

random.seed()


def run_periodically(start, end, interval, func):

    event_time = start

    while event_time < end:

        s.enterabs(event_time, 0, func, ())

        event_time += interval + random.randrange(-5, 10)

    s.run()


def pubdate():

    return '{pubdate} {pubtime}'.format(

        pubdate = datetime.date.today().strftime("%d %B %Y"),

        pubtime = time.strftime('%H:%M')

    )


## If you comment out this print the run periodically will work fine

print("""<pubDate>%s</pubDate>""" % (pubdate()))


def runme():

    print "example prints/code"


runme()


## If you comment out this line the pubdate works fine

#run_periodically(time()+5, time()+1000000, 10, runme)

我想知道有什么解决方法可以使此代码在同一脚本中与两个函数一起使用。亲切的问候AEA


青春有我
浏览 172回答 1
1回答

白猪掌柜的

您正在重新绑定time到模块:from time import time, sleepimport time第二行替换time您首先导入的内容。从此模块中选择一种导入样式并坚持下去。import times = scheduler(time.time, time.sleep)# ...&nbsp; &nbsp; pubtime = time.strftime('%H:%M')或使用from time import time, sleep, strftimes = scheduler(time, sleep)# ...&nbsp; &nbsp; pubtime = strftime('%H:%M')
随时随地看视频慕课网APP

相关分类

Python
我要回答