advent-of-code-2025/generate.py

43 lines
1.1 KiB
Python

import os
import sys
from datetime import datetime
def get_template(year, day, part):
part_letter = {1: 'a', 2: 'b'}[part]
return f'''import aocd
def main(data):
...
if __name__ == '__main__':
solution = main(aocd.get_data(day={day}, year={year}))
print(solution)
# aocd.submit(solution, part='{part_letter}', day={day}, year={year})'''
def main():
today = datetime.today()
year = today.year
month = today.month
day = today.day if len(sys.argv) == 1 else int(sys.argv[1])
if month != 12 or not 1 <= day <= 25:
print('Advent of Code runs from December 1st to December 25th', file=sys.stderr)
sys.exit(1)
directory_name = f'day-{day:02}'
if directory_name not in os.listdir():
os.mkdir(directory_name)
for part in (1, 2):
filename = f'part-{part}.py'
if filename in os.listdir(directory_name):
continue
with open(f'{directory_name}/{filename}', 'w') as f:
f.write(get_template(year, day, part))
if __name__ == '__main__':
main()