按月输出本年日历,星期日在前。将上述日历输出至文件。
时间: 2024-03-24 08:36:48 浏览: 139
您可以使用以下Python代码按月输出本年日历,并将它们输出到文件中:
```python
import sys
import calendar
# 获取当前年份
year = int(input("请输入年份:"))
# 按月输出日历
for month in range(1, 13):
# 获取当前月份的日历文本
cal_text = calendar.monthcalendar(year, month)
# 将星期日移到第一列
for week in cal_text:
if week[0] == 0:
week.pop(0)
week.append(0)
# 将日历文本写入文件
with open('calendar.txt', 'a') as f:
sys.stdout = f
print(calendar.month_name[month], year)
print('Su Mo Tu We Th Fr Sa')
for week in cal_text:
print(' '.join(['{:2}'.format(day) if day > 0 else ' ' for day in week]))
print()
```
以上代码中,我们使用了`calendar`模块的`monthcalendar()`函数来获取日历文本。然后,我们将星期日移到第一列以满足要求,并将日历文本写入`calendar.txt`文件中。注意,在写入文件之前,我们使用`sys.stdout`将输出重定向到文件,这样就可以将日历文本直接写入文件中了。
阅读全文