async def answer_q1(message: types.Message, state: FSMContext): try: answer = message.text cid = get_cid_by_name(answer) list_of_students = get_list_of_student_from_cours(cid) await message.answer("Количество студентов на " + answer + " равно: " + str(len(list_of_students))) except: await message.answer('Что-то пошло не так...') await state.finish()
async def answer_q1(message: types.Message, state: FSMContext): data = await state.get_data() answer1 = data.get("answer1") answer2 = data.get("answer2") answer3 = data.get("answer3") answer = message.text try: check = check_course_pass(answer1, answer) if check: insert_new_teacher(message.from_user.id, answer2, answer3) print(message.from_user.id) print(get_cid_by_name(answer1)) insert_new_teacher_course(message.from_user.id, get_cid_by_name(answer1)) await message.answer("Вы стали администратором курса " + answer1) else: await message.answer("Вы ввели неверный пароль") except: await message.answer("Не балуйся)") await state.finish()
async def answer_q2(message: types.Message, state: FSMContext): answer = message.text data = await state.get_data() answer1 = data.get("answer1") if answer == 'Да': try: cid = get_cid_by_name(answer1) leave_course(message.from_user.id, cid) await message.answer('Вы покинули курс {}!'.format(answer1), reply_markup=ReplyKeyboardRemove()) except: await message.answer('Что-то пошло не так....', reply_markup=ReplyKeyboardRemove()) await state.finish()
async def answer_q1(message: types.Message, state: FSMContext): try: answer = message.text cid = get_cid_by_name(answer) grades = get_my_grades(message.from_user.id, cid, 1) g = [] for i in grades: g.append(i[3]) strgrades = str(g) await message.answer("Ваши оценки " + strgrades, reply_markup=ReplyKeyboardRemove()) except: await message.answer('Что-то пошло не так....') await state.finish()
async def answer_q1(message: types.Message, state: FSMContext): answer = message.text try: cid = get_cid_by_name(answer) check = check_telegramdi_in_student_course(message.from_user.id, cid) if check: await message.answer("Вы уже записаны на курс!", reply_markup=ReplyKeyboardRemove()) else: try: join_to_course(message.from_user.id, cid) await message.answer("Вы записаны на курс " + answer, reply_markup=ReplyKeyboardRemove()) except: await message.answer("Сначала зарегистрируйся в системе! Введи /reg", reply_markup=ReplyKeyboardRemove()) except: await message.answer("Попробуйте еще раз", reply_markup=ReplyKeyboardRemove()) await state.finish()
async def answer_q1(message: types.Message, state: FSMContext): try: answer = message.text cid = get_cid_by_name(answer) list_of_students = get_list_of_student_from_cours(cid) list_of_all_grades = [] for student in list_of_students: list_of_all_grades = list_of_all_grades + [ i[3] for i in get_my_grades(student[0], cid, 1) ] if len(list_of_all_grades) == 0: await message.answer("По данному предмету не выставленны оценки") else: await message.answer( "Средняя оценка по курсу: " + str(sum(list_of_all_grades) / len(list_of_all_grades))) except: await message.answer('Что-то пошло не так...') await state.finish()
async def answer_q1(message: types.Message, state: FSMContext): try: # получаем ответ answer = message.text # проверяем входные параметры cid = get_cid_by_name(answer) grades = get_my_grades(message.from_user.id, cid, 1) # Получаем оценки g = [] for i in grades: g.append(i[3]) # считаем среднее арифметическое if len(g) != 0: stats = sum(g)/len(g) else: stats = 0 # Отсылаем ответ пользователю await message.answer("Ваша средняя оценка по курсу " + stats, reply_markup=ReplyKeyboardRemove()) except: await message.answer('Что-то пошло не так....') await state.finish()
async def answer_q1(message: types.Message, state: FSMContext): try: answer = message.text cid = get_cid_by_name(answer) list_of_students = get_list_of_student_from_cours(cid) list_of_student_marks = [] for student in list_of_students: grades = [i[3] for i in get_my_grades(student[0], cid, 1)] if len(grades) == 0: list_of_student_marks.append((student[0], 0)) else: list_of_student_marks.append( (student[0], sum(grades) / len(grades))) top5 = sorted(list_of_student_marks, key=lambda res: res[1], reverse=True)[:5] result = "" for res in top5: info = get_info_about_me(res[0])[0] result = result + f"{info[1]} {info[2]} : {res[1]}\n" await message.answer("Топ 5 студентов по оценкам:\n" + result) except: await message.answer('Что-то пошло не так...') await state.finish()