Files
025-squirrel/src/squirrel/constants.py
T
Tirsvad 7459711243 Implement census analysis: read, count, summarise, write and CLI
Closes #11
Closes #12
Closes #13
Closes #14
Closes #15

Task: MIL-002#4
Task: MIL-002#5
Task: MIL-002#6
Task: MIL-002#7
Task: MIL-002#8
2026-10-13 15:37:51 +08:00

31 lines
1.1 KiB
Python

##
# @file constants.py
# @brief Literals used by the squirrel census analysis, each defined once.
"""Literals used by the squirrel census analysis, each defined once."""
import pathlib
## @brief Default location of the census CSV file, relative to the working directory.
DEFAULT_INPUT_PATH: pathlib.Path = (
pathlib.Path("data") / "2018_Central_Park_Squirrel_Census_-_Squirrel_Data.csv"
)
## @brief Default location of the summary CSV file that is written.
DEFAULT_OUTPUT_PATH: pathlib.Path = pathlib.Path("squirrel_count.csv")
## @brief Text encoding of the input and output files.
FILE_ENCODING: str = "utf-8"
## @brief Name of the census column that holds the primary fur colour.
FUR_COLOR_COLUMN: str = "Primary Fur Color"
## @brief Fur colours that are counted, in the order they appear in the summary.
FUR_COLORS: tuple[str, ...] = ("Gray", "Cinnamon", "Black")
## @brief Exit status of the command line when the census file does not exist.
EXIT_INPUT_MISSING: int = 2
## @brief Header of the summary file: the colour column, then the count column.
SUMMARY_COLUMNS: tuple[str, str] = ("Fur Color", "Count")