我试图用Python将字符串+日期时间写入文本文件。我正在尝试制作一个基本的记录器,它将以下列格式记录日期时间:“完整的工作日、天数、全月名称、全年、12小时格式、分钟、秒、AM/PM、UTC”。我读到file.write()只能使用字符串而不能接受整数或日期等,那么我将如何使这个工作被写入文本文件呢?
grab_date = datetime.datetime.now().strftime("%A %d, %B %Y %I:%M:%S %p %Z")
firstline = "Log Created: ", grab_date, "/nLog deleted and recreated."
f = open("gen-log.txt", "w")
f.seek(0)
f.write(firstline)
f.close()编辑:不太清楚为什么,但我在一篇文章中看到,f.seek(0)做了一些事情,并且对他们有效。LOL。我只是把它落在里面了。抱歉的。
发布于 2014-07-28 19:07:34
可以将数据格式化为字符串;例如,使用字符串格式:
firstline = "Log Created: {}/nLog deleted and recreated.".format(grab_date)您还可以利用print()的能力将所有参数转换为字符串和自动换行符,并将其写入文件:
print("Log Created:", grab_date, file=f)
print("Log deleted and recreated.", file=f)如果您可以避免它,不要重新发明日志轮和使用模块。可以是配置为采用不同的日期格式。
>>> import logging
>>> logging.basicConfig(datefmt="%A %d, %B %Y %I:%M:%S %p %Z", format='Log Created: %(asctime)-15s %(message)s')
>>> logging.warn('Foo bar baz!')
Log Created: Monday 28, July 2014 08:13:44 PM BST Foo bar baz!https://stackoverflow.com/questions/25002459
复制相似问题