mycqu.course.CourseTimetable

class mycqu.course.CourseTimetable(course: mycqu.course.Course, stu_num: Optional[int], classroom: Optional[str], weeks: List[Tuple[int, int]], day_time: Optional[mycqu.course.CourseDayTime], whole_week: bool, classroom_name: Optional[str], expr_projects: List[str])

课表对象,一个对象存储有相同课程、相同行课节次和相同星期的一批行课安排

Methods

__init__(course, stu_num, classroom, weeks, ...)

fetch(session, code[, cqu_session])

从 my.cqu.edu.cn 上获取学生或老师的课表

from_dict(data)

从反序列化的一个课表 json 中获取课表

Attributes

course

对应的课程

stu_num

学生数

classroom

行课地点,无则为 None

weeks

行课周数,列表中每个元组 (a,b) 代表一个周数范围 a~b(包含 a, b),在单独的一周则有 b=a

day_time

行课的星期和节次,若时间是整周(如真实地占用整周的军训和某些实习、虚拟地使用一周的思修实践) 则为 None

whole_week

是否真实地占用整周(如军训和某些实习是真实地占用、思修实践是“虚拟地占用”)

classroom_name

行课教室名称

expr_projects

实验课各次实验内容

Details

classroom: Optional[str]

行课地点,无则为 None

classroom_name: Optional[str]

行课教室名称

course: mycqu.course.Course

对应的课程

day_time: Optional[mycqu.course.CourseDayTime]

行课的星期和节次,若时间是整周(如真实地占用整周的军训和某些实习、虚拟地使用一周的思修实践) 则为 None

expr_projects: List[str]

实验课各次实验内容

static fetch(session: requests.sessions.Session, code: str, cqu_session: Optional[Union[mycqu.course.CQUSession, str]] = None) List[mycqu.course.CourseTimetable]

从 my.cqu.edu.cn 上获取学生或老师的课表

参数
  • session (Session) – 登录了统一身份认证(auth.login())并在 mycqu 进行了认证(mycqu.access_mycqu())的 requests 会话

  • code (str) – 学生或教师的学工号

  • cqu_session (Optional[Union[CQUSession, str]], optional) – 需要获取课表的学期,留空获取当前年级的课表

引发

MycquUnauthorized – 若会话未在 my.cqu.edu.cn 进行认证

返回

获取的课表对象的列表

返回类型

List[CourseTimetable]

static from_dict(data: Dict[str, Any]) mycqu.course.CourseTimetable

从反序列化的一个课表 json 中获取课表

参数

data (Dict[str, Any]) – 反序列化成字典的课表 json

返回

课表对象

返回类型

CourseTimetable

stu_num: Optional[int]

学生数

weeks: List[Tuple[int, int]]

行课周数,列表中每个元组 (a,b) 代表一个周数范围 a~b(包含 a, b),在单独的一周则有 b=a

whole_week: bool

是否真实地占用整周(如军训和某些实习是真实地占用、思修实践是“虚拟地占用”)