代码拉取完成,页面将自动刷新
同步操作将从 jackfrued/review 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#!/usr/bin/python3
"""
万年历程序
"""
import sys
from datetime import datetime
def is_leap(year):
"""
判断闰年
:param year: 年份
:returns: 如果是闰年返回True否则返回False
"""
return year % 4 == 0 and year % 100 != 0 or year % 400 == 0
def days_of_month(year, month):
"""
获取指定的月份有多少天
:param year: 年份
:param month: 月份
:returns: 该月份的天数
"""
days = [None, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
total = days[month]
return total + 1 if month == 2 and is_leap(year) else total
def main():
"""主函数"""
if len(sys.argv) == 3:
month, year = map(int, sys.argv[1:])
else:
curr_date = datetime.now()
year, month = curr_date.year, curr_date.month
y, m = (year, month) if month > 2 else (year - 1, month + 12)
c, y = y // 100, y % 100
w = y + y // 4 + c // 4 - 2 * c + 26 * (m + 1) // 10
w %= 7
month_names = [
'', 'January', 'Feburary', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December'
]
print(f'{month_names[month]} {year}'.center(20))
print('Su Mo Tu We Th Fr Sa')
print(' ' * w * 3, end='')
days = days_of_month(year, month)
for day in range(1, days + 1):
print(f'{day}'.rjust(2), end=' ')
w += 1
if w == 7:
w = 0
print()
print()
if __name__ == '__main__':
main()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。