← 返回题库
初级

实现小票日期格式标准化

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve():
    import re
    def normalize_date(raw):
        if not raw or str(raw)=='nan': return None, 'missing'
        raw = str(raw).strip()
        m = re.match(r'(\d{4})[-/](\d{2})[-/](\d{2})', raw)
        if m: return f"{m.group(1)}-{m.group(2)}-{m.group(3)}", 'ok'
        m2 = re.match(r'(\d{4})(\d{2})(\d{2})$', raw)
        if m2: return f"{m2.group(1)}-{m2.group(2)}-{m2.group(3)}", 'ok'
        return None, 'parse_error'
    tests = ['2026-01-15','2026/01/15','20260115','','invalid']
    print("Date normalization:")
    for d in tests:
        result, status = normalize_date(d)
        print(f"  '{d}' -> {result} [{status}]")

示例

输入
solve()
期望输出
Date normalization:
  '2026-01-15' -> 2026-01-15 [ok]
  '2026/01/15' -> 2026-01-15 [ok]
  '20260115' -> 2026-01-15 [ok]
  '' -> None [missing]
  'invalid' -> None [parse_error]
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码