世界完全对称日计算(python)

看到有人写的用 c++ 写的世界完全对称日(如今天:2011 1102)的计算,我也来用 python 玩玩

主要思路是将年份数字反转作为月日对应的数字,使其满足完全对称的条件,然后判断此日期是否有效,如果有效则输出

代码如下:

# -*- coding: utf-8 -*-
# Author: TinyZ
# Filename: symmetry_date.py
# Date  : Nov 2, 2011
 
import datetime,time
 
def strToDatetime(datestr,format='%Y%m%d'):
    try:
        return datetime.datetime.strptime(datestr, format)
    except ValueError:
        return False
 
def symmetry_date(year_start, year_end):
    for i in xrange(year_start,year_end+1):
        test=str(i)+str(i)[::-1]
        result=strToDatetime(test)
        if result:
            print result.strftime('%Y-%m-%d')
 
if __name__=='__main__':
    symmetry_date(2000,2099)

  结果:

复制代码
[tiny@tiny python]$ python symmetry_date.py
2001-10-02
2010-01-02
2011-11-02
2020-02-02
2021-12-02
2030-03-02
2040-04-02
2050-05-02
2060-06-02
2070-07-02
2080-08-02
2090-09-02
复制代码



posted @   TinyZ  阅读(2225)  评论(5)    收藏  举报
编辑推荐:
· 微服务架构学习与思考:微服务拆分的原则
· 记一次 .NET某云HIS系统 CPU爆高分析
· 如果单表数据量大,只能考虑分库分表吗?
· 一文彻底搞懂 MCP:AI 大模型的标准化工具箱
· 电商平台中订单未支付过期如何实现自动关单?
阅读排行:
· .NET 阻止Windows关机以及阻止失败的一些原因
· 博客园2025新款「AI繁忙」系列T恤上架
· Avalonia跨平台实战(二),Avalonia相比WPF的便利合集(一)
· C# LINQ 快速入门实战指南,建议收藏学习!
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(6)
点击右上角即可分享
微信分享提示