编写程序,使用不同的实现方法,输出2000~3000之间的所有闰年
时间: 2024-05-09 15:20:04 浏览: 136
输出最近1000年(公元2000~3000年)中的闰年
Python实现:
方法1:使用for循环遍历每一年,判断是否为闰年
```python
for year in range(2000, 3001):
if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
print(year)
```
方法2:使用列表推导式生成所有闰年
```python
leap_years = [year for year in range(2000, 3001) if year % 4 == 0 and year % 100 != 0 or year % 400 == 0]
print(leap_years)
```
方法3:使用filter函数过滤出所有闰年
```python
def is_leap_year(year):
return year % 4 == 0 and year % 100 != 0 or year % 400 == 0
leap_years = filter(is_leap_year, range(2000, 3001))
print(list(leap_years))
```
方法4:使用lambda表达式和filter函数过滤出所有闰年
```python
leap_years = filter(lambda year: year % 4 == 0 and year % 100 != 0 or year % 400 == 0, range(2000, 3001))
print(list(leap_years))
```
方法5:使用递归函数输出所有闰年
```python
def print_leap_years(start_year, end_year):
if start_year > end_year:
return
if start_year % 4 == 0 and start_year % 100 != 0 or start_year % 400 == 0:
print(start_year)
print_leap_years(start_year + 1, end_year)
print_leap_years(2000, 3000)
```
阅读全文