Wargame_campaign_app/cli/utils.py

15 lines
359 B
Python
Raw Permalink Normal View History

2025-12-19 12:18:35 +01:00
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