从其他模块使用导入的功能时,该功能不起作用

时间:2020-05-02 11:37:37

标签: python import

我一直试图了解我的代码出了什么问题,但没有成功...

我有两个.py文件,我已使用某些功能 logs.py 编写了该文件,应将输入内容写入文件 和 monitor_mode.py 使用thous函数

当运行log.py作为主要文件时,一切正常,并且文件已创建并写入,但是当尝试在monitor_mode.py中使用相同的功能时,似乎什么都没有写入文件,我也不知道为什么

我确实尝试调试,并且代码被定向到正确的功能,除没有创建或未将数据写入文件外,一切都按正常进行

感谢您的帮助

logs.py

serviceList = 'serviceList.txt'
statusLog = 'statusLog.txt'


def print_to_file(file_name, input):
    with open(file_name, 'a+') as write_obj:
        write_obj.write(input + '\n')
    write_obj.close()


def add_timestamp(input):
    timestamp = '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~' + datetime.datetime.now().strftime(
        "%Y-%m-%d %H:%M:%S") + '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
    input = timestamp + '\n' + input
    return input


if __name__ == "__main__":
    import services

    for i in range(3):
        proc = services.list_of_process()
        proc = add_timestamp(proc)
        print_to_file(serviceList, proc)

monitor_mode.py

import logs
import services

serviceList = 'serviceList.txt'
statusLog = 'statusLog.txt'


def updates_log():
    proc = services.list_of_process()
    proc = logs.add_timestamp(proc)
    logs.print_to_file(serviceList, proc)
    print('Updates Logs\n' + proc)


if __name__ == "__main__":
    for i in range(3):
        updates_log()

EDIT1.1 上面的代码在ubuntu16.8上运行 在win10机器上运行代码时,它的工作正常。

services.list_of_process()-返回一个字符串

0 个答案:

没有答案