根据输入的年份和月份计算当月一共有多少天。python不使用calender
时间: 2024-09-24 18:11:14 浏览: 50
在Python中,你可以通过创建一个字典来存储每个月的天数,然后根据给定的年份和月份来计算总天数。这里是一个简单的函数示例:
```python
def days_in_month(year, month):
# 创建一个字典,存储每个月的天数
months_days = {
1: 31,
2: 28 if (year % 4 != 0 or (year % 100 == 0 and year % 400 != 0)) else 29, # 考虑闰年
3: 31,
4: 30,
5: 31,
6: 30,
7: 31,
8: 31,
9: 30,
10: 31,
11: 30,
12: 31,
}
return months_days.get(month, "Invalid month")
# 使用函数
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
days = days_in_month(year, month)
print(f"{year}年的{month}月有 {days} 天。")
相关问题
如何使用python的calender模块
Python的calendar模块提供了许多用于处理日期和时间的函数。以下是使用calendar模块的一些示例:
1. 导入calendar模块:
```python
import calendar
```
2. 获取指定年份的日历:
```python
year = 2021
cal = calendar.calendar(year)
print(cal)
```
3. 获取指定月份的日历:
```python
year = 2021
month = 9
cal = calendar.month(year, month)
print(cal)
```
4. 获取指定年份的闰年数:
```python
year = 2021
leap = calendar.isleap(year)
if leap:
print(f"{year} is a leap year.")
else:
print(f"{year} is not a leap year.")
```
5. 获取指定月份的天数:
```python
year = 2021
month = 9
days = calendar.monthrange(year, month)[1]
print(f"{year}-{month} has {days} days.")
```
6. 获取指定日期所在周的开始和结束日期:
```python
import datetime
date_str = '2021-09-01'
date_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d')
start_date = date_obj - datetime.timedelta(days=date_obj.weekday())
end_date = start_date + datetime.timedelta(days=6)
print(f"The week of {date_str} starts from {start_date.strftime('%Y-%m-%d')} to {end_date.strftime('%Y-%m-%d')}.")
```
这些只是calendar模块提供的一些常用函数,还有很多其他的函数可供使用。可以查看Python官方文档获取更多信息。
python calender 输出中文
可以使用 Python 的 calendar 库中的 TextCalendar 类来输出中文日历。具体代码如下:
```python
import calendar
# 创建 TextCalendar 对象
cal = calendar.TextCalendar(calendar.SUNDAY)
# 输出中文日历
print(cal.formatyear(2021, 2, 1, 1, 3))
```
其中,`formatyear()` 方法用于输出整年的日历,参数分别为:年份、每周的第一天(默认为 0,即周一)、每行显示的月份数、每行显示的月份之间的间隔数、每月之间的间隔数。上述代码输出的是 2021 年的中文日历。
阅读全文