V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
lyang
V2EX  ›  Python

离线环境,计算增加 x 个工作日后的日期

  •  
  •   lyang · 2023-03-15 14:47:29 +08:00 · 2402 次点击
    这是一个创建于 654 天前的主题,其中的信息可能已经有所发展或是发生改变。

    国内节假日都是每年出一个放假安排,这方面的库应该都是不准确的把。 离线环境下,计算某个时间往后 n 个工作日的日期,有这方面的库吗,相对准确些的,如果没有的话,单独判断或列出所有节假日比较准确的库有推荐吗

    16 条回复    2023-03-16 10:25:03 +08:00
    yaphets666
        1
    yaphets666  
       2023-03-15 15:13:12 +08:00
    离线的不行吧,市面上的软件都是需要维护的
    Ericcccccccc
        2
    Ericcccccccc  
       2023-03-15 15:33:54 +08:00
    每年国务院出放假安排的时候手动维护一下就行.
    SimonOne
        3
    SimonOne  
       2023-03-15 15:43:38 +08:00
    不行,每年的工作日安排都是变化的,受法定节假日调班影响,在国务院公布安排前你不可能预测到下一年的调整。
    mxT52CRuqR6o5
        4
    mxT52CRuqR6o5  
       2023-03-15 15:45:39 +08:00
    提供界面录入节假日
    lyang
        5
    lyang  
    OP
       2023-03-15 15:56:01 +08:00
    @yaphets666
    @Ericcccccccc
    @SimonOne
    @mxT52CRuqR6o5
    谢谢啦,这点也知道,所以在考虑大致天数靠谱的,搜到了 holidays 、chinesecalendar 之类的,不能做加减,主要还是想问问有没有自带天数加减只算工作日的,目测应该没有,还是自己写个吧
    SimonOne
        6
    SimonOne  
       2023-03-15 16:21:38 +08:00
    @lyang #5 😂要是你搞 sap 就好了,sap hcm 里有函数
    SimonOne
        7
    SimonOne  
       2023-03-15 16:28:41 +08:00
    @lyang #5 https://github.com/workalendar/workalendar
    看看这个,刚搜到的。

    >>> cal.add_working_days(date(2012, 12, 23), 5) # 5 working days after Xmas
    datetime.date(2012, 12, 31)
    hervey0424
        8
    hervey0424  
       2023-03-15 16:55:15 +08:00
    @SimonOne 没用的, 里面得数据只到 23 年, 如果不升级的话明年就不灵了
    wangtian2020
        9
    wangtian2020  
       2023-03-15 16:58:09 +08:00
    打个电话问问国家假日办接下来 100 年的放假安排
    brader
        10
    brader  
       2023-03-15 17:23:28 +08:00
    可以自己做一个预测模型,目前我国法定假日就 11 天,观测往年的调休规律,长假哪一天调休、补班,短假怎么推迟,都是有一定规律的,大部分是看贴近上一个周末还是下一个周末。
    在离线不考虑持续维护的情况下,这样做就可以了,大致准确。
    SimonOne
        11
    SimonOne  
       2023-03-15 17:28:43 +08:00
    @hervey0424 #8 因为只公布到 23 年啊。OP 不是说他知道吗,他要一个大概的,可以计算日期在 18-23 年内的,调这个,23 年后的,用周几算个大概的。
    dif
        12
    dif  
       2023-03-15 17:33:51 +08:00
    每年都等发改委发通知,然后手动录入的。
    Daitabashi
        13
    Daitabashi  
       2023-03-15 19:10:29 +08:00 via iPhone
    自己算就行,节日在周一就放 671 ,在周二就放 712 ,在周三就放 234 ,在周四就放 456 ,在周五就放 567 ,周六放 567 ,周日放 671 。有准确数据就使用准确数据(比如今年及以前的日期),没有准确数据也能保证在“非放假 /调休周”的计算是准确的。
    pcell
        14
    pcell  
       2023-03-15 22:24:25 +08:00
    不要求准,自己看法定节假日有哪些是农历的,哪些是新历的,用万年历算一下凑合一下就是了。
    但值得一提的是,不是每年节假日日数总和是一样的,例如法规调整法定节假日,例如突发情况调整节假日(因为那事情 2020 年春节不就多了几天)
    WashFreshFresh
        15
    WashFreshFresh  
       2023-03-16 09:36:27 +08:00
    这种都是每年更新的
    AlexHsu
        16
    AlexHsu  
       2023-03-16 10:25:03 +08:00
    什么时候吧假日办拉出去都枪毙了 真正吧法定假日的休假时间和串休规则写到宪法里才能实现离线
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1731 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:35 · PVG 00:35 · LAX 08:35 · JFK 11:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.