Python_test_personal
README.md
Python_test_personal
Хорошо, давайте попробуем создать такую программу вместе. В данном примере мы будем использовать язык программирования Python и библиотеку Flask для создания веб-приложения.
Шаги для реализации:
-
Установка Flask:
pip install flask -
Создание структуры проекта:
mkdir employee_testingcd employee_testingtouch app.py
- Написание основного файла приложения (
):app.py
from flask import Flask, render_template, requestimport random
app = Flask(__name__)
@app.route('/')def index(): return render_template('index.html')
@app.route('/quiz', methods=['GET', 'POST'])def quiz(): # Задаем вопросы и ответы questions = [ {'question': 'Какой самый большой океан?', 'answers': ['Тихий', 'Атлантический'], 'correct_answer': 'Тихий'}, {'question': 'Сколько континентов на Земле?', 'answers': ['6', '7'], 'correct_answer': '7'} ] if request.method == 'POST': question_id = int(request.form['question_id']) answer = request.form['user_answer'] if answer == questions[question_id]['correct_answer']: score += 1 next_question = question_id + 1 if next_question >= len(questions): return render_template('results.html', score=score) else: return render_template('quiz.html', questions=questions, current_question=next_question) else: return render_template('quiz.html', questions=questions, current_question=0)
if __name__ == '__main__': app.run()
- Определение шаблона HTML для индексной страницы:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Employee Testing</title></head><body> <h1>Тестирование знаний</h1> <a href="/quiz">Начать тест</a></body></html>
- Определение шаблона HTML для страницы теста:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Тест знаний</title></head><body> <h1>Тест знаний</h1> {% for question in questions %} <div> Вопрос {{ loop.index }} из {{ questions|length }}: {{ question.question }} <ul> {% for answer in question.answers %} <li><input type="radio" name="user_answer" value="{{ answer }}"><label>{{ answer }}</label></li> {% endfor %} </ul> </div> {% endfor %} <button onclick="document.getElementById('submit').submit();">Отправить ответ</button> <form id="submit" method="post" action="/quiz"> <input type="hidden" name="question_id" value="{{ current_question }}"> </form></body></html>
- Определение шаблона HTML для результатов теста:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Результаты теста</title></head><body> <h1>Результаты теста</h1> Вы набрали {{ score }} баллов из {{ questions|length }} возможных.<br> <a href="/">Пройти еще раз</a></body></html>
Примечания:
- Убедитесь, что файлы шаблонов находятся в той же директории, что и
.app.py - Адреса страниц должны соответствовать вашему проекту.
Эта программа позволяет сотрудникам проходить тестирование онлайн, отвечая на вопросы и видя свои результаты.