【发布时间】:2012-12-09 03:26:22
【问题描述】:
我对 python 很陌生,对它了解不多,但我需要制作一个小脚本,当有人输入任何格式的日期时,它会将其转换为 yyyy-mm-dd 格式。 该脚本应该能够共享输入日期的元素,并识别模式。
这对某些人来说可能很容易和显而易见,但我自己制作一个却是我的头。
提前致谢!
【问题讨论】:
我对 python 很陌生,对它了解不多,但我需要制作一个小脚本,当有人输入任何格式的日期时,它会将其转换为 yyyy-mm-dd 格式。 该脚本应该能够共享输入日期的元素,并识别模式。
这对某些人来说可能很容易和显而易见,但我自己制作一个却是我的头。
提前致谢!
【问题讨论】:
您可以使用strftime 进行输出(您的格式是"%Y-%M-%d")。
对于解析输入,有一个相应的函数 - strptime。但是您将无法处理“任何格式”。你必须首先知道你得到了什么。否则,您将无法区分(例如)美国日期和其他日期。例如,01.02.03 是什么意思?这可能是:
【讨论】:
你可以做这样的事情(未测试)
import locale
import datetime
...
parsedDate = datetime.strptime(your_string, locale.D_FMT)
print datetime.strftime(parsedDate, "%Y-%M-%d")
这假定用户将使用自己的本地日期约定。
【讨论】: