From 87dde0835efc1721619a35ef0d18498d4a9da490 Mon Sep 17 00:00:00 2001 From: user_3d Date: Thu, 16 Oct 2025 13:00:06 +0500 Subject: [PATCH] =?UTF-8?q?20251016=20=D0=BC=D0=B5=D0=BD=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 55 +++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 49 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index ba217db..195be10 100644 --- a/main.py +++ b/main.py @@ -1,5 +1,7 @@ import sqlite3 import datetime +import sys + import pandas as pd import os @@ -290,6 +292,52 @@ def print_partner_cards(partners_df): print("╚" + "═" * 70 + "╝") print() +def simple_choice(options): + print("\n" + "=" * 50) + print("ВЫБЕРИТЕ ОПЦИЮ:") + print("=" * 50) + for i, option in enumerate(options, 1): + print(f"{i}. {option}") + + while True: + try: + choice = input(f"\nВведите номер (1-{len(options)}): ").strip() + if choice.isdigit(): + choice_num = int(choice) + if 1 <= choice_num <= len(options): + return options[choice_num - 1] + print(f"Пожалуйста, введите число от 1 до {len(options)}") + except (ValueError, EOFError): + print("Неверный ввод. Попробуйте еще раз.") + except KeyboardInterrupt: + print("\nПрограмма прервана пользователем.") + sys.exit(0) + + +def display_menu(): + menu_options = [ + 'КАРТОЧКИ ПАРТНЕРОВ (сортировка по рейтингу)', + 'Мой пункт меню', + 'ВЫХОД' + ] + + while True: + choice = simple_choice(menu_options) + + if choice == 'КАРТОЧКИ ПАРТНЕРОВ (сортировка по рейтингу)': + print("\n🎯 КАРТОЧКИ ПАРТНЕРОВ (сортировка по рейтингу)") + print("═" * 70) + partners = get_partners(sort_by='rating', ascending=False) + print_partner_cards(partners) + elif choice == 'Мой пункт меню': + print("\nДомой! 👋") + break + elif choice == 'ВЫХОД': + print("\nДо свидания! 👋") + break + + + if __name__ == "__main__": # Проверяем данные print("Данные успешно добавлены в базу данных!") @@ -300,12 +348,7 @@ if __name__ == "__main__": count = cursor.fetchone()[0] print(f"{table}: {count} записей") conn.close() - - print("1. КАРТОЧКИ ПАРТНЕРОВ (сортировка по рейтингу)") - print("=" * 70) - partners = get_partners(sort_by='rating', ascending=False) - print_partner_cards(partners) - + display_menu() # print("\n3. Партнеры со статистикой продаж:") # partners_stats = get_partners_with_stats() #