【问题标题】:How do I convert dates from "Month DD,YY" to "MM/DD/YY" in python?如何在 python 中将日期从“Month DD,YY”转换为“MM/DD/YY”?
【发布时间】:2015-04-28 20:11:15
【问题描述】:

如何在 python 中将 2015 年 4 月 28 日转换为 2015 年 4 月 28 日? 我可以指定 April = 4 但不能指定 April 04。我该怎么做?

【问题讨论】:

  • 请在每个帖子中保留 一个 问题。
  • 好吧对不起!但这个问题被搁置了
  • 你的April 28,2015值是什么样的对象,一个字符串?
  • 这并不意味着您可以将其添加到另一个问题中。阅读暂停的原因并改进问题,以便重新打开。
  • 我已经从您的帖子中删除了该部分。剩下的问题也不够。也许您想了解如何提出好问题:stackoverflow.com/help/how-to-ask,包括底部的链接文章。

标签: python datetime


【解决方案1】:
C:> pip install python-dateutil
C:> python
...
>>> from dateutil.parser import parse
>>> print "STACK OVERFLOW SAVED MY BACON ON:",parse("April 28,2015").strftime("%m/%d/%y")

如果您确定格式,当然可以准确指定:

>>> import datetime
>>> print datetime.datetime.strptime("%B %d,%Y","April 28,2015").strftime("%m/%d/%y")

【讨论】:

  • 谢谢你的回复,我不太明白你的答案是如何工作的。我是一名初学者程序员,刚在大学里开始编程几周。我还没有学那些东西。能否以新手的方式给我一些建议?
  • 这是最基本的方法......你让 dateutil 将字符串解析为日期......然后你告诉日期你希望它如何格式化
  • 我在考虑可能分配一月 = 01...十二月 = 12 个月。然后在我刚刚调用 input 的那一天和我刚刚调用 input()[2:4] 的那一年。这是一个好主意吗?似乎python不允许一月= 01,而是允许一月= 1。在程序中我必须写出确切的输出。
  • @JoranBeasley dateutil 看起来很棒,你能在这里提供 API 链接吗?
  • 使用起来可能更简单name[:10].ljust(10, '-')
【解决方案2】:

标准模块 datetime 包含此功能。下面的代码将字符串设置为相关日期。然后我使用strptime 从字符串创建一个日期/时间对象。然后我以请求的格式从对象中输出日期。

from datetime import datetime

dt = 'April 28, 2015'

dtObject = datetime.strptime(dt,"%B %d, %Y")

dtConverted = dtObject.strftime("%m/%d/%y")

【讨论】:

    【解决方案3】:

    这假设输入和期望的输出都是文本:

    import datetime 
    
    >>> datetime.datetime.strptime('April 28, 2015', '%B %d, %Y').strftime('%m/%d/%y')
    '04/28/15'
    

    其他格式为here

    【讨论】:

      猜你喜欢
      • 2022-11-19
      • 1970-01-01
      • 1970-01-01
      • 2012-01-27
      • 1970-01-01
      • 2013-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多