本文整理汇总了Python中models.Course.getStudents方法的典型用法代码示例。如果您正苦于以下问题:Python Course.getStudents方法的具体用法?Python Course.getStudents怎么用?Python Course.getStudents使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类models.Course
的用法示例。
在下文中一共展示了Course.getStudents方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: process
# 需要导入模块: from models import Course [as 别名]
# 或者: from models.Course import getStudents [as 别名]
#.........这里部分代码省略.........
# For testing, print values of courses.
#for k, v in courses.iteritems():
# print([k])
# print(u"Course: {}; Seats: {}".format(v.getName(), v.getSeats()))
# Do allocation of students, returns unsorted students and courses that were
# not found, and also inserts students into the students list in each course
unsorted_students, missing_courses = sortStudents(students, courses)
# At this point, courses will have had their arrays filled with students.
### UNSORTED STUDENTS ###
u_students_filename = timeStamped("unsorted-students.xls")
u_students_wb_path = os.path.join(
app.config['UPLOAD_FOLDER'],
u_students_filename
)
# Construct workbooks and populate them.
unsorted_students_wb = xlwt.Workbook()
unsorted_students_sheet = unsorted_students_wb.add_sheet("Students")
unsorted_student_headers = [
"ID", "First Name", "Last Name", "First Year Seminar DDB 1", "First Year Seminar DDB 2", "First Year Seminar DDB 3"
]
for index, header in enumerate(unsorted_student_headers):
unsorted_students_sheet.write(0, index, header)
for i, student in enumerate(unsorted_students):
unsorted_students_sheet.write(i + 1, 0, student.getStudentId())
unsorted_students_sheet.write(i + 1, 1, student.getFName())
unsorted_students_sheet.write(i + 1, 2, student.getLName())
prefs = student.getRawPreferences()
for j, pref in enumerate(prefs):
unsorted_students_sheet.write(i + 1, j + 3, pref)
unsorted_students_wb.save(u_students_wb_path)
### SORTED STUDENTS ###
sorted_student_headers = [
"ID", "First Name", "Last Name", "FSEM Chosen"
]
sorted_students_wb = xlwt.Workbook()
sorted_students_sheet = sorted_students_wb.add_sheet("Students")
s_students_filename = timeStamped("sorted-students.xls")
s_students_wb_path = os.path.join(
app.config['UPLOAD_FOLDER'],
s_students_filename
)
# Create sorted students array
sorted_students = []
for course_name, course in courses.iteritems():
course_students = map(lambda s: (course_name, s), course.getStudents())
sorted_students.extend(course_students)
# Add headers to sorted student sheet
for index, header in enumerate(sorted_student_headers):
sorted_students_sheet.write(0, index, header)
for (i, (course_name, student)) in enumerate(sorted_students):
sorted_students_sheet.write(i + 1, 0, student.getStudentId())
sorted_students_sheet.write(i + 1, 1, student.getFName())
sorted_students_sheet.write(i + 1, 2, student.getLName())
sorted_students_sheet.write(i + 1, 3, course_name)
sorted_students_wb.save(s_students_wb_path)
print(s_students_wb_path)
### CLOSED COURSES ###
closed_courses_filename = timeStamped("closed-courses.xls")
c_courses_wb_path = os.path.join(
app.config['UPLOAD_FOLDER'],
closed_courses_filename
)
closed_courses = [c for (name, c) in courses.iteritems() if c.isFull()]
closed_course_headers = [
"Course Name", "Seats", "Requests"
]
closed_courses_wb = xlwt.Workbook()
closed_course_sheet = closed_courses_wb.add_sheet("Courses")
for index, header in enumerate(closed_course_headers):
closed_course_sheet.write(0, index, header)
for i, course in enumerate(closed_courses):
closed_course_sheet.write(i + 1, 0, course.getName())
closed_course_sheet.write(i + 1, 1, course.getSeats())
closed_course_sheet.write(i + 1, 2, course.getRequests())
closed_courses_wb.save(c_courses_wb_path)
# Inform about rows with invalid students.
if (invalid_students):
invalid_student_list = ', '.join([str(x) for x in invalid_students])
flash("The following row{} in the Student spreadsheet were missing necessary values: {}".format('s' if len(invalid_students) > 1 else "", invalid_student_list))
# Inform about requests made for missing courses.
if (missing_courses):
invalid_courses_list = '; '.join(["{} ({})".format(k, len(v)) for k, v in missing_courses.iteritems()])
flash("The following course{} requested but not found in the course spreadsheet (number of times requested listed): {}".format('s were' if len(missing_courses) > 1 else ' was', invalid_courses_list))
return render_template('results.html', s_path=s_students_filename, us_path=u_students_filename, c_courses=closed_courses_filename)