OzoneAsai commited on
Commit
8651983
1 Parent(s): 2392605

Update outerElectronFl.py

Browse files
Files changed (1) hide show
  1. outerElectronFl.py +98 -9
outerElectronFl.py CHANGED
@@ -30,8 +30,97 @@ element_outer_electrons: dict[str, int] = {
30
  # 他の元素も追加可能
31
  }
32
 
33
- @app.route("/", methods=["GET", "POST"])
34
- def quiz():
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35
  # セッションに元素がない場合はランダムに選択
36
  if "element" not in session:
37
  session["element"] = random.choice(list(element_outer_electrons.keys()))
@@ -43,15 +132,15 @@ def quiz():
43
  result = "正解です!"
44
  else:
45
  result = f"残念!正解は {correct_answer} でした。"
46
- return render_template("quiz.html", element=session["element"], result=result)
47
 
48
- return render_template("quiz.html", element=session["element"], result=None)
49
 
50
- @app.route("/next", methods=["POST"])
51
- def next_question():
52
  # 次の問題をセッションに設定し、リダイレクト
53
  session["element"] = random.choice(list(element_outer_electrons.keys()))
54
- return redirect(url_for("quiz"))
55
 
56
- if __name__ == "__main__":
57
- app.run(port=7860,host="0.0.0.0")
 
30
  # 他の元素も追加可能
31
  }
32
 
33
+ # 首都のデータを辞書に格納する
34
+ capitals = {
35
+ 'アルバニア': 'ティラナ',
36
+ 'アンドラ': 'アンドラ・ラ・ベリャ',
37
+ 'オーストリア': 'ウィーン',
38
+ 'ベラルーシ': 'ミンスク',
39
+ 'ベルギー': 'ブリュッセル',
40
+ 'ボスニア・ヘルツェゴビナ': 'サライェヴォ',
41
+ 'ブルガリア': 'ソフィア',
42
+ 'クロアチア': 'ザグレブ',
43
+ 'チェコ': 'プラハ',
44
+ 'デンマーク': 'コペンハーゲン',
45
+ 'エストニア': 'タリン',
46
+ 'フィンランド': 'ヘルシンキ',
47
+ 'フランス': 'パリ',
48
+ 'ドイツ': 'ベルリン',
49
+ 'ギリシャ': 'アテネ',
50
+ 'ハンガリー': 'ブダペスト',
51
+ 'アイスランド': 'レイキャヴィーク',
52
+ 'アイルランド': 'ダブリン',
53
+ 'イタリア': 'ローマ',
54
+ 'ラトビア': 'リガ',
55
+ 'リヒテンシュタイン': 'ファドゥーツ',
56
+ 'リトアニア': 'ヴィリニュス',
57
+ 'ルクセンブルク': 'ルクセンブルク',
58
+ 'マルタ': 'バレッタ',
59
+ 'モルドバ': 'キシナウ',
60
+ 'モナコ': 'モナコ',
61
+ 'モンテネグロ': 'ポドゴリツァ',
62
+ 'オランダ': 'アムステルダム',
63
+ '北マケドニア': 'スコピエ',
64
+ 'ノルウェー': 'オスロ',
65
+ 'ポーランド': 'ワルシャワ',
66
+ 'ポルトガル': 'リスボン',
67
+ 'ルーマニア': 'ブカレスト',
68
+ 'ロシア': 'モスクワ',
69
+ 'サンマリノ': 'サンマリノ',
70
+ 'セルビア': 'ベオグラード',
71
+ 'スロバキア': 'ブラチスラヴァ',
72
+ 'スロベニア': 'リュブリャナ',
73
+ 'スペイン': 'マドリード',
74
+ 'スウェーデン': 'ストックホルム',
75
+ 'スイス': 'ベルン',
76
+ 'ウクライナ': 'キーウ',
77
+ 'イギリス': 'ロンドン',
78
+ 'バチカン': 'バチカン',
79
+ 'アルメニア': 'エレバン',
80
+ 'アゼルバイジャン': 'バクー',
81
+ 'キプロス': 'ニコシア',
82
+ 'ジョージア': 'トビリシ',
83
+ 'イスラエル': 'エルサレム',
84
+ 'カザフスタン': 'アスタナ',
85
+ 'トルコ': 'アンカラ',
86
+ "エチオピア": "アディスアベバ",
87
+ }
88
+
89
+ # ランダムな国名とその首都を取得する関数
90
+ def get_random_country():
91
+ country = random.choice(list(capitals.keys()))
92
+ return country, capitals[country]
93
+
94
+ # 初期の問題を設定する
95
+ current_country, current_capital = get_random_country()
96
+
97
+ @app.route('/')
98
+ def index():
99
+ return redirect(url_for('quiz_index'))
100
+
101
+ @app.route('/quiz_capital', methods=['GET', 'POST'])
102
+ def quiz_capital():
103
+ global current_country, current_capital
104
+
105
+ result = None
106
+
107
+ if request.method == 'POST':
108
+ user_input = request.form['user_input']
109
+ if user_input == current_capital:
110
+ result = '正解です!'
111
+ else:
112
+ result = '不正解です。正解は{}です。'.format(current_capital)
113
+
114
+ return render_template('quiz_capital.html', element=current_country, result=result)
115
+
116
+ @app.route('/next_capital', methods=['POST'])
117
+ def next_question_capital():
118
+ global current_country, current_capital
119
+ current_country, current_capital = get_random_country()
120
+ return redirect(url_for('quiz_capital'))
121
+
122
+ @app.route('/quiz_element', methods=['GET', 'POST'])
123
+ def quiz_element():
124
  # セッションに元素がない場合はランダムに選択
125
  if "element" not in session:
126
  session["element"] = random.choice(list(element_outer_electrons.keys()))
 
132
  result = "正解です!"
133
  else:
134
  result = f"残念!正解は {correct_answer} でした。"
135
+ return render_template("quiz_element.html", element=session["element"], result=result)
136
 
137
+ return render_template("quiz_element.html", element=session["element"], result=None)
138
 
139
+ @app.route("/next_element", methods=["POST"])
140
+ def next_question_element():
141
  # 次の問題をセッションに設定し、リダイレクト
142
  session["element"] = random.choice(list(element_outer_electrons.keys()))
143
+ return redirect(url_for("quiz_element"))
144
 
145
+ if __name__ == '__main__':
146
+ app.run(debug=True, port=7860)