Spaces:
Sleeping
Sleeping
import streamlit as st | |
# MBTI μ§λ¬Έκ³Ό μ νμ§ μ€μ | |
questions = [ | |
("λΉμ μ μλ‘μ΄ μ¬λλ€μ λ§λλ κ²μ μ’μνλμ?", ("μ", "μλμ€")), | |
("ꡬ체μ μΈ μ¬μ€μ μ νΈνλμ, μλλ©΄ κ°λ₯μ±μ λν΄ μκ°νλ κ²μ μ νΈνλμ?", ("ꡬ체μ μΈ μ¬μ€", "κ°λ₯μ±")), | |
("κ²°μ μ λ΄λ¦΄ λ λ Όλ¦¬μ μ΄μ±μ λ μ€μνλμ, μλλ©΄ κ°μΈμ κ°μ κ³Ό κ°μΉλ₯Ό λ μ€μνλμ?", ("λ Όλ¦¬μ μ΄μ±", "κ°μΈμ κ°μ κ³Ό κ°μΉ")), | |
("κ³νμ μΈμ°λ κ²μ μ νΈνλμ, μλλ©΄ μ μ°νκ² λμ²νλ κ²μ μ νΈνλμ?", ("κ³ν μΈμ°κΈ°", "μ μ°νκ² λμ²νκΈ°")), | |
("νλμ μΈ ν΄κ°λ₯Ό μ νΈνλμ, μλλ©΄ μ‘°μ©ν ν΄κ°λ₯Ό μ νΈνλμ?", ("νλμ μΈ ν΄κ°", "μ‘°μ©ν ν΄κ°")), | |
("μ¬μ€μ λ°νμΌλ‘ μ΄μΌκΈ°νλ κ²μ μ νΈνλμ, μλλ©΄ μμλ ₯μ λ°νμΌλ‘ μ΄μΌκΈ°νλ κ²μ μ νΈνλμ?", ("μ¬μ€ λ°ν", "μμλ ₯ λ°ν")), | |
("곡μ ν¨μ΄ λ μ€μνλμ, μλλ©΄ μΉμ ν¨μ΄ λ μ€μνλμ?", ("곡μ ν¨", "μΉμ ν¨")), | |
("μΌμ λλ΄λ κ²μ΄ λ λ§μ‘±μ€λ½λμ, μλλ©΄ μΌμ μμνλ κ²μ΄ λ λ§μ‘±μ€λ½λμ?", ("μΌ λλ΄κΈ°", "μΌ μμνκΈ°")), | |
("μ ν΅μ μΈ λ°©λ²μ μ νΈνλμ, μλλ©΄ μλ‘μ΄ λ°©λ²μ μλνλ κ²μ μ νΈνλμ?", ("μ ν΅μ μΈ λ°©λ²", "μλ‘μ΄ λ°©λ²")), | |
("κ³νμ λ°λΌ νλνλ κ²μ μ’μνλμ, μλλ©΄ spontaneityλ₯Ό μ νΈνλμ?", ("κ³νμ λ°λΌ", "spontaneity")), | |
] | |
# MBTI μ°¨μλ³ μ μ κ³μ°μ μν μ΄κΈ°ν | |
scores = {"E": 0, "I": 0, "S": 0, "N": 0, "T": 0, "F": 0, "J": 0, "P": 0} | |
# μ§λ¬Έκ³Ό μ νμ§λ₯Ό μΆλ ₯νκ³ μ¬μ©μμ μλ΅μ κΈ°λ‘ | |
for i, (question, options) in enumerate(questions, start=1): | |
answer = st.radio(question, options, key=f"question_{i}") | |
if answer: | |
# μ¬μ©μμ μ νμ λ°λΌ μ μ μ λ°μ΄νΈ (μ΄ λΆλΆμ μμλ‘ κ°λ¨νκ² κ΅¬νλμ΄ μμ΅λλ€) | |
if i % 4 == 1: | |
scores["E" if answer == options[0] else "I"] += 1 | |
elif i % 4 == 2: | |
scores["S" if answer == options[0] else "N"] += 1 | |
elif i % 4 == 3: | |
scores["T" if answer == options[0] else "F"] += 1 | |
elif i % 4 == 0: | |
scores["J" if answer == options[0] else "P"] += 1 | |
if st.button("결과 보기"): | |
# MBTI μ ν κ²°μ | |
mbti_type = "".join([max(pair, key=lambda x: scores[x]) for pair in [("E", "I"), ("S", "N"), ("T", "F"), ("J", "P")]]) | |
st.write(f"λΉμ μ MBTI μ νμ {mbti_type}μ λλ€.") | |