首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有微秒组件的Python字符串

没有微秒组件的Python字符串
EN

Stack Overflow用户
提问于 2011-11-03 18:18:11
回答 16查看 737.4K关注 0票数 536

我正在将UTC时间字符串添加到Bitbucket API响应中,该响应目前只包含阿姆斯特丹(!)时间弦。为了与其他地方返回的UTC时间字符串保持一致,需要的格式是2011-11-03 11:07:04 (后面跟着+00:00,但这不是关系)。

从带有微秒组件的datetime实例中创建这样一个字符串(没有微秒组件)的最佳方法是什么?

代码语言:javascript
复制
>>> import datetime
>>> print unicode(datetime.datetime.now())
2011-11-03 11:13:39.278026

我将添加我所想到的最佳选择,作为一个可能的答案,但很可能会有一个更优雅的解决方案。

编辑:--我应该提到,我实际上并没有打印当前时间--我使用datetime.now提供了一个快速示例。因此,解决方案不应假设它接收到的任何datetime实例都将包括微秒组件。

EN

回答 16

Stack Overflow用户

回答已采纳

发布于 2011-11-03 18:22:00

如果要将datetime对象格式化为与标准格式不同的特定格式,最好显式指定该格式:

代码语言:javascript
复制
>>> import datetime
>>> datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
'2011-11-03 18:21:26'

有关the documentation of datetime.strftime()指令的说明,请参见%

从Python3.6开始,isoformat()方法非常灵活,可以生成这种格式:

代码语言:javascript
复制
datetime.datetime.now().isoformat(sep=" ", timespec="seconds")
票数 1K
EN

Stack Overflow用户

发布于 2011-11-03 18:19:44

代码语言:javascript
复制
>>> import datetime
>>> now = datetime.datetime.now()
>>> print unicode(now.replace(microsecond=0))
2011-11-03 11:19:07
票数 213
EN

Stack Overflow用户

发布于 2017-01-11 06:43:30

在Python 3.6中:

代码语言:javascript
复制
from datetime import datetime
datetime.now().isoformat(' ', 'seconds')
'2017-01-11 14:41:33'

https://docs.python.org/3.6/library/datetime.html#datetime.datetime.isoformat

票数 143
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7999935

复制
相关文章

相似问题

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