【问题标题】:How do I get my Python date in the format that I want?如何以我想要的格式获取 Python 日期?
【发布时间】:2010-07-07 16:01:14
【问题描述】:

我正在从 Python 中的 Excel 单元格中读取日期(在单元格上使用 .Value)...我得到的结果是:

07/06/10 00:00:00

我认为这是一个字符串,因此开始尝试弄清楚如何将其转换为我需要的格式(本例中为“yyyyMMdd”或“20100706”)。然而,在玩了一些之后,我意识到它 不是 被拉成一个字符串......在它上面运行 type() 会返回 <type 'time'>

然后我假设它是一个 Python 时间对象,并尝试在其上使用 strftime 将其转换为字符串......但这也不起作用。它无法识别值上的 strftime 方法。

关于如何正确解析并获得我想要的格式的任何想法?我究竟做错了什么? (如果这清楚地包含日期和时间,为什么 Python 会自动将其视为时间对象?)

【问题讨论】:

  • 一个单元格在什么地方? pygtk? tkinter?随机网页?
  • 什么单元格?这是极品吗?还是什么?
  • 哦,哎呀。对不起这是我的错。是的,擅长。我会更新问题

标签: python time date-parsing date-formatting


【解决方案1】:

您可以像这样将其转换为时间对象:

import time
time.strptime(str(thetime), '%m/%d/%y %H:%M:%S')

然后你应该能够随心所欲地操纵它。

HTH

【讨论】:

  • 试过了...我得到AttributeError: type object 'datetime.time' has no attribute 'strptime'
  • 我认为time.strptime()中的time是一个模块而不是一个对象。
  • @Alex Bliskovsky - 不确定我明白了...如何更改代码以使其正常工作?
  • 对不起,我忘了提到我指的是哪个模块。固定
  • @froadie:我怀疑您将datetime.time 导入为time 而不是time。前者没有strptime 属性。将导入更改为 import time 应该会有所帮助。或者,您可以执行以下操作:from datetime import datetime; datetime.strptime(str(cell.Value), '%m/%d/%y %H:%M:%S')HTH
【解决方案2】:

你试过str(time)吗?这应该以字符串形式提供给您,然后您可以随意使用格式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-05
    • 1970-01-01
    • 1970-01-01
    • 2018-12-18
    • 2014-03-02
    • 2021-09-17
    • 1970-01-01
    相关资源
    最近更新 更多