自分に合うタイプの人診断
ソースコード
- questions = [
- "1. どの季節が好きですか?\nA. 春\nB. 夏\nC. 秋\nD. 冬",
- "2. どの種類の音楽が好きですか?\nA. ロック\nB. ポップ\nC. ジャズ\nD. クラシック",
- "3. どのようなアクティビティが好きですか?\nA. アウトドア\nB. インドア\nC. スポーツ\nD. 読書",
- "4. 占い師から告げられたあなたの前世は?\nA. 幸せに暮らした農民\nB. 歴史に名を遺した偉人\nC. 恋多き西洋の姫君\nD. 人ではなく動物だった",
- ]
- criteria = {
- "A": "自然を楽しむタイプ",
- "B": "社交的なタイプ",
- "C": "クリエイティブなタイプ",
- "D": "知的なタイプ",
- }
- # 質問に答える関数
- def ask_questions(questions):
- answers = []
- for question in questions:
- print(question)
- answer = input("選択肢を入力してください(A/B/C/D): ")
- answers.append(answer)
- return answers
- # タイプを診断する関数
- def diagnose_person(answers, criteria):
- result = {}
- for answer in answers:
- if answer in criteria:
- result[criteria[answer]] = result.get(criteria[answer], 0) + 1
- return result
- # メインプログラム
- if __name__ == "__main__":
- print("自分に合うタイプの人を診断しましょう!")
- user_answers = ask_questions(questions)
- user_type = diagnose_person(user_answers, criteria)
-
- if user_type:
- print("あなたに合うタイプの人は:")
- for typ, count in user_type.items():
- print(f"{typ}: {count}人")
- else:
- print("該当するタイプの人はいません。")
感想
明確に自分に合う人の答えを出したかったが、「こういうタイプの人が何人いる」というような答え方になってしまった