Wargame_campaign_app/cli/utils.py
2025-12-19 12:18:35 +01:00

14 lines
359 B
Python

def choose_from_list(items, label_fn):
for i, item in enumerate(items, start=1):
print(f"{i}. {label_fn(item)}")
print("0. Back")
choice = input("> ").strip()
if choice == "0":
return None
try:
return items[int(choice) - 1]
except (ValueError, IndexError):
print("Invalid choice")
return None