首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用.write() Python3编写变量

用.write() Python3编写变量
EN

Stack Overflow用户
提问于 2014-07-28 19:05:59
回答 1查看 190关注 0票数 0

我试图用Python将字符串+日期时间写入文本文件。我正在尝试制作一个基本的记录器,它将以下列格式记录日期时间:“完整的工作日、天数、全月名称、全年、12小时格式、分钟、秒、AM/PM、UTC”。我读到file.write()只能使用字符串而不能接受整数或日期等,那么我将如何使这个工作被写入文本文件呢?

代码语言:javascript
复制
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。我只是把它落在里面了。抱歉的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-28 19:07:34

可以将数据格式化为字符串;例如,使用字符串格式

代码语言:javascript
复制
firstline = "Log Created: {}/nLog deleted and recreated.".format(grab_date)

您还可以利用print()的能力将所有参数转换为字符串和自动换行符,并将其写入文件:

代码语言:javascript
复制
print("Log Created:", grab_date, file=f)
print("Log deleted and recreated.", file=f)

如果您可以避免它,不要重新发明日志轮和使用模块。可以是配置为采用不同的日期格式。

代码语言:javascript
复制
>>> 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!
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25002459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档