请修改书上的万年历程序,将其改成模块形式,并编写程序调用该模块,实现以下功能: 1、根据输入的年份,判断是不是闰年,并输出结果;
时间: 2024-10-16 10:09:21 浏览: 41
为了将万年历程序改为模块形式,我们可以创建一个名为`calendar_module.py`的文件,里面包含闰年判断函数以及一个接口供外部调用。以下是修改后的代码:
```python
# calendar_module.py
def is_leap_year(year):
"""
判断给定的年份是否为闰年
"""
if year % 4 != 0:
return False
elif year % 100 != 0:
return True
elif year % 400 != 0:
return False
else:
return True
def display_calendar(year):
"""
输出指定年份的日历
"""
print(calendar.calendar(year))
# 调用示例:
if __name__ == "__main__":
import calendar_module as cm
user_year = int(input("请输入年份: "))
cm.display_calendar(user_year)
leap_result = "闰年" if cm.is_leap_year(user_year) else "非闰年"
print(f"{user_year}年是{leap_result}")
```
现在,我们已经将判断闰年和显示日历的功能分别放在了`is_leap_year`和`display_calendar`两个函数中。在`calendar_module.py`外部,比如主程序中,通过导入`calendar_module`模块并调用这两个函数即可。
要运行这个模块,你需要在另一个文件(例如`main.py`)中导入并调用它,就像下面这样:
```python
# main.py
from calendar_module import display_calendar, is_leap_year
# ...
# 用户输入
user_year = int(input("请输入年份: "))
# 显示日历和判断闰年
display_calendar(user_year)
print(f"{user_year}年是{'' if is_leap_year(user_year) else '非'}闰年")
```
执行`main.py`,即可实现根据输入的年份判断闰年并输出日历。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://img-home.csdnimg.cn/images/20250102104920.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)