当前位置: 首页 > 面试题库 >

Python:一个月的第三个星期五

赵健柏
2023-03-14
问题内容

我是一名菜鸟python程序员,我需要编写脚本来检查给定的日期(以“ Month,day
year”的形式作为字符串传递)是否是该月的第三个星期五。我正在使用Python 2.7。

例如,这些日期可以帮助您更好地了解我的问题。有手头的年度日历。

  • 输入- >输出
  • ‘2013年1月18日’-> True
  • ‘2013年2月22日’—>错误
  • ‘2013年6月21日’-> True
  • ‘2013年9月20日’-> True

我只想使用该语言提供的标准类,例如时间,日期时间,日历等。

我已经调查了一些答案,但每天都会看到类似addidng
/减去86400秒的计算,甚至根据一个月的天数进行比较。恕我直言,这些是错误的,因为Python中的自由已经处理了这些细节,因此无需重新发明轮子。日历和日期也很复杂:leap年,leap秒,时区,星期数等,因此我认为最好让图书馆解决这些棘手的细节。

在此先感谢您的帮助。


问题答案:

应该这样做:

from datetime import datetime

def is_third_friday(s):
    d = datetime.strptime(s, '%b %d, %Y')
    return d.weekday() == 4 and 15 <= d.day <= 21

测试

print is_third_friday('Jan 18, 2013')  # True
print is_third_friday('Feb 22, 2013')  # False
print is_third_friday('Jun 21, 2013')  # True
print is_third_friday('Sep 20, 2013')  # True


 类似资料:
  • 问题内容: python是否提供一种轻松获取 每月 当前星期(1:4)的方法? 问题答案: 为了使用直接除法,您需要根据当月第一天的位置(星期内)来调整您要查看的日期的星期几。因此,如果您的月份恰好在星期一(一周的第一天)开始,则可以按照上面的建议进行除法。但是,如果该月从星期三开始,则需要加2,然后进行除法。这些都封装在下面的函数中。

  • 我试图弄清楚如何确定特定的星期一是给定月份的第一个、第二个、第三个还是第四个星期一。我已经弄清楚了如何使用LocalDate类获取下一个星期一和月中的一周。 在上面的例子中,代码获取下一个星期一及其所在的星期。星期是二月的第二周,但那个星期一不是第二个星期一,而是第一个星期一。如果您有任何帮助,我们将不胜感激。

  • 问题内容: 我想获取特定月份/年份中第一个星期一的日期。 我有的: 我基本上有两个int变量,一个代表年份,一个代表月份。 我想要的是: 我想知道本月的第一个星期一,最好是一个int或Integer值。 例如: 我有2014年和1月(1月),这个月的第一个星期一是6号,所以我想返回6。 问题: 我以为可以做到这一点,但是在设置日历(仅提供年和月)时已经遇到了麻烦。此外,我不确定如何使用返回实际的月

  • 我想知道特定月份/年份的第一个星期一的日期。 我所拥有的: 我基本上有两个int变量,一个代表年份,一个代表月份。 我想要的是: 我想知道这个月的第一个星期一,最好是整数或整数值。 例如: 我有2014年和1月,这个月的第一个星期一是6号,所以我想返回6号。 问题: 我原以为我可以用做到这一点,但我在设置日历时遇到了问题,因为只有年份和月份可用。此外,我不知道如何使用返回月份/年份的第一个星期一。

  • 我有几十个积压的请求在处理中,比如 我已经有了一个每天都在运行的函数,我只需要将:位附加到end。 考虑公历和时区的细微差别,我花的时间越少,我的生活就越好。 有人知道简化这种计算的Java库吗?没有xml配置或框架或任何东西。只有一个。Jar和一个文档化的、可读的API将是完美的。 任何帮助都将不胜感激。

  • 问题内容: 我正在尝试编写这样的日历功能 是整数(1、2、3 …),$ day是一天(Sun,Mon,…)或数字,以较容易的一个为准。方向有些混乱,因为它进行了不同的计算。 举个例子 它使用默认值,并获得5月的第一个星期日,即2009-05-03。如果我们打电话 ,它将返回5月的第二个最后一个星期日,即2009-05-24。 问题答案: 也许可以使其更快。。。 代码非常有趣。 请注意,前进1表示反

  • 我正在尝试提出一个CRON表达式,它允许我在一个月内的每个星期一运行一个石英触发器,第一个除外。 参考文献: http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron

  • 问题内容: 我对此有些挣扎。 我想设置日历为: 2012年2月的第三个星期一。 而且我找不到使用Java进行此操作的任何方法。 例如,如果我想将日历设置为2011年圣诞节,则可以通过以下方式轻松实现: 但是我对于如何设置它(比如说2012年阵亡将士纪念日)感到困惑,那是5月的最后一个星期一。这是我的代码,但显然是错误的,因为我根本无法假设5月的最后一个星期一将在那年5月的第4周: 关于如何以编程方