Управление файлами cookie
Мы используем файлы cookie, чтобы обеспечить наилучшие впечатления от сайта.
Управление файлами cookie
Настройки файлов cookie
Файлы cookie, необходимые для корректной работы сайта, всегда включены. Другие файлы cookie настраиваются.
Essential cookies
Always On. These cookies are essential so that you can use the website and use its functions. They cannot be turned off. They're set in response to requests made by you, such as setting your privacy preferences, logging in or filling in forms.
Analytics cookies
Disabled
These cookies collect information to help us understand how our Websites are being used or how effective our marketing campaigns are, or to help us customise our Websites for you. See a list of the analytics cookies we use here.
Advertising cookies
Disabled
These cookies provide advertising companies with information about your online activity to help them deliver more relevant online advertising to you or to limit how many times you see an ad. This information may be shared with other advertising companies. See a list of the advertising cookies we use here.
Hello world!
import streamlit as st # ✅ Функция для сброса состояния при новом выборе цвета def restart_if_needed(): if "analyze" in st.session_state: del st.session_state["analyze"] del st.session_state["q3"] del st.session_state["q4"] st.rerun() # ✅ Инициализация session_state if "q3" not in st.session_state: st.session_state["q3"] = "" if "q4" not in st.session_state: st.session_state["q4"] = "" # 🎵 Музыкальные рекомендации по Владимиру Элькину music_elkin = { "🔵 Синий": ["Ария на струне соль (И.С. Бах)", "Лунная соната (Л. Бетховен)", "Зима из Времен года (А. Вивальди)"], "🟢 Зелёный": ["Симфония №5 (Л. Бетховен)", "Симфония №40 (В.А. Моцарт)", "Марш воинов (Ф. Шуберт)"], "🔴 Красный": ["Увертюра 1812 года (П.И. Чайковский)", "Танец рыцарей (С. Прокофьев)", "Carmina Burana - O Fortuna (К. Орф)"], "🟡 Жёлтый": ["Концерт для флейты (В.А. Моцарт)", "Весна из Времен года (А. Вивальди)", "Вальс На прекрасном голубом Дунае (И. Штраус)"], "🟣 Фиолетовый": ["Поэма экстаза (А. Скрябин)", "Лунный свет (К. Дебюсси)", "Гимнопедии (Э. Сати)"], "🟤 Коричневый": ["Бранденбургские концерты (И.С. Бах)", "Симфония №6 Пасторальная (Л. Бетховен)"], "⚫ Чёрный": ["Второй концерт для фортепиано (С. Рахманинов)", "Песнь о земле (Г. Малер)", "Лебединое озеро (П.И. Чайковский)"], "⚪ Серый": ["Шум дождя, морских волн", "Тибетские напевы"] } # 🎭 Данные для терапии пользователя correction_data = { "🔵 Синий": ("Покой, удовлетворение, внутренний мир", "«Покой не во внешнем, а внутри нас.»"), "🟢 Зелёный": ("Воля, упорство, преодоление", "«Дорогу осилит идущий.»"), "🔴 Красный": ("Энергия, динамика, победа", "«Энергия приходит с первым шагом.»"), "🟡 Жёлтый": ("Радость, надежда, оптимизм", "«Улыбка – это ключ к новой двери.»"), "🟣 Фиолетовый": ("Творчество, мечтательность, фантазия", "«Мечтай смело – это путь к реальности.»"), "🟤 Коричневый": ("Заземлённость, стабильность", "«Стабильность – это основа для роста.»"), "⚫ Чёрный": ("Глубокая печаль, драматизм, трансформация", "«Трансформация начинается с принятия.»"), "⚪ Серый": ("Нейтральность, отстранённость, баланс", "«Баланс – это искусство находить середину.»") } # 🌟 Выбор цветов st.title("🎵 Подбор музыки и коррекция состояния") # 🔥 Сброс состояния при изменении выбора selected_favorite = st.radio("1️⃣ Какой цвет вам сейчас наиболее приятен?", list(music_elkin.keys()), key="favorite_color", on_change=restart_if_needed) selected_disliked = st.radio("2️⃣ Какой цвет вам сейчас НЕ нравится?", list(music_elkin.keys()), key="disliked_color", on_change=restart_if_needed) submitted = st.button("🔍 Анализировать") if submitted: st.session_state["q3"] = selected_favorite.strip() st.session_state["q4"] = selected_disliked.strip() st.session_state["analyze"] = True # 🔥 Флаг для анализа # 🔥 Показываем анализ только после нажатия кнопки if st.session_state.get("analyze"): st.divider() st.subheader("🔍 Анализ вашего состояния") q3 = st.session_state["q3"] q4 = st.session_state["q4"] # ✅ Вывод выбора st.write(f"🌟 **Вы выбрали:** {q3}") st.write(f"❌ **Вам не нравится:** {q4}") st.subheader("🎵 Музыкальные рекомендации:") # ✅ Музыка на основе любимого цвета st.write(f"🎶 **Рекомендации на основе вашего выбора {q3}:**") for song in music_elkin[q3]: st.markdown(f"[🎵 {song}](https://www.youtube.com/results?search_query={song.replace(' ', '+')})") # ✅ Музыка для балансировки состояния (на основе нелюбимого цвета) st.write(f"💡 **Музыка для балансировки (разрешение конфликта с {q4}):**") for song in music_elkin[q4]: st.markdown(f"[🎵 {song}](https://www.youtube.com/results?search_query={song.replace(' ', '+')})") # 🎭 Коррекция состояния через цитаты st.divider() st.subheader("💬 Коррекция состояния") # ✅ Фраза по выбранному цвету st.write(f"✨ **Ваше текущее состояние:** {correction_data[q3][0]}") st.write(f"💡 {correction_data[q3][1]}") # ✅ Фраза по отверженному цвету (балансировка) st.write(f"🔄 **Вам трудно принять:** {correction_data[q4][0]}") st.write(f"💡 {correction_data[q4][1]}") st.write("\n💡 Используйте музыку и слова как инструмент управления эмоциями! 🎶")