【发布时间】:2010-10-13 23:57:20
【问题描述】:
我想检查用户是否按特定顺序输入了输入。基本上我希望用户以这样的格式输入日期
%d/%m/%y %H:%M
有什么方法可以比较python中的字符串输入和上述格式吗?
【问题讨论】:
标签: python string comparison
我想检查用户是否按特定顺序输入了输入。基本上我希望用户以这样的格式输入日期
%d/%m/%y %H:%M
有什么方法可以比较python中的字符串输入和上述格式吗?
【问题讨论】:
标签: python string comparison
import time
time.strptime("01/01/09 12:23", "%d/%m/%y %H:%M")
如果字符串不匹配,这将引发 ValueError:
time.strptime("01/01/09 12:234", "%d/%m/%y %H:%M")
time.strptime("01-01-09 12:23", "%d/%m/%y %H:%M")
顺便说一句,请不要带回两位数的年份——尽可能使用 %Y。
【讨论】:
这听起来像是……正则表达式的工作!看看re module。你想要的很简单,只需将正则表达式交给你就相当简单了,但你应该学会自己使用它们。
好的,对于这项工作,strptime 的答案更好。但是对于确保字符串与格式匹配的一般情况,正则表达式通常是要走的路。
【讨论】:
strptime 更灵活,代码更少(就我们而言)