تمرين إعادة البناء
طابع تقويم شهر
اطبع تقويم شهر محدد مع تمييز اليوم الحالي عند مطابقته.
python
~20 دقيقة
متوسط
أعد بناء الكود
Rebuild
هذا هو الكود. اكتبه بنفسك.
الكود المرجعي
import argparse
import calendar
from datetime import date
def render_month(year: int, month: int) -> str:
today = date.today()
lines = calendar.TextCalendar(firstweekday=6).formatmonth(year, month).splitlines()
if today.year == year and today.month == month:
needle = f"{today.day:2}"
lines = [line.replace(needle, f"[{today.day:02}]", 1) if needle in line else line for line in lines]
return "\n".join(lines)
def main() -> None:
parser = argparse.ArgumentParser(description="Print a month calendar.")
parser.add_argument("--year", type=int, default=date.today().year)
parser.add_argument("--month", type=int, default=date.today().month)
args = parser.parse_args()
print(render_month(args.year, args.month))
if __name__ == "__main__":
main()اكتب هنا