Python获取当月第一天是星期几
时间: 2024-05-24 13:08:41 浏览: 17
获取当月第一天是星期几,可以使用Python的datetime库中的weekday()函数,该函数返回的是星期几对应的数字,星期一到星期天分别对应0到6。
以下是获取当月第一天是星期几的Python代码演示[^2]:
```python
import datetime
# 获取当前时间
now = datetime.datetime.now()
# 将当前时间改为当月第一天
first_day = datetime.datetime(now.year, now.month, 1)
# 获取当月第一天是星期几
weekday = first_day.weekday()
# 星期一到星期天对应的数字 0 到 6
print("当月第一天是星期{}".format(weekday + 1))
```
注意:上述代码中,weekday()函数返回的星期几对应的数字是从0开始计数的,需要加1才能得到实际的星期几。
相关问题
python给定年月获取当月最后一天的日期
可以使用Python的`calendar`模块来获取当月最后一天的日期。具体实现代码如下:
```python
import calendar
import datetime
def get_last_day_of_month(year, month):
last_day = calendar.monthrange(year, month)[1]
return datetime.date(year, month, last_day)
# 示例
last_day = get_last_day_of_month(2021, 10)
print(last_day) # 输出:2021-10-31
```
其中,`calendar.monthrange(year, month)`方法可以返回指定年月的月份第一天是星期几和这个月的天数。我们取返回值的第二个元素,即这个月的天数作为最后一天的日期。最后,使用`datetime.date()`方法构造一个日期对象并返回即可。
假设当月共有31天,用户输入的整数代表当月第一天是星期几,把当月所有的星期四都输出到屏幕,格式为“…号是星期四”。
可以使用Python编写一个程序来解决这个问题,如下所示:
```python
# 获取用户输入
day1 = int(input("请输入当月第一天是星期几(1-7):"))
month_days = 31 # 当月总天数
# 输出当月所有的星期四
for day in range(1, month_days + 1):
if (day + day1 - 1) % 7 == 4: # 判断是否为星期四
print("{}号是星期四".format(day))
```
程序首先获取用户输入的当月第一天是星期几,并将当月总天数设为31天。然后使用for循环遍历当月的所有天数,判断每一天是否为星期四,如果是则输出对应的日期和星期四。具体的判断方法是通过计算该天与第一天的星期差值,再用7取模来判断是否为星期四。程序输出的结果类似于下面这样:
```
请输入当月第一天是星期几(1-7):3
3号是星期四
10号是星期四
17号是星期四
24号是星期四
31号是星期四
```