Introduction to Python Curriculum

The CodeGrade Introduction to Python course is a basic Python course with 6 lessons. Students are not required to have any prior knowledge on programming or Python. This course will cover the basics of programming in Python, modules like NumPy and Pandas, OOP and introduce students into the fields of data science and artificial intelligence.
Each lesson covers multiple topics, which are assessed in fully autograded assignments. Students are encouraged to continuously hand in to these assignments to test out their implementation. Automatic checks are built in to detect whether students have put the topics explained in that week into practice.
Students can use CodeGrade’s built-in editor to work on the assignments, which is especially recommended for the first couple of weeks. Templates are available and set up for students in the editor.
This course is ready to use and can be taught as a whole, or can be cherrypicked from to fit in your Python course.
  • 30+ ready to use Python assignments, including:
    • Assignment description;
    • CodeGrade assignment + AutoTest;
    • Solution code;
    • Template code and required fixtures.
  • All available through the Community Library.

Overview of the curriculum

  • Lesson 1: print, variables, arithmetics and data types (6 assignments).
  • Lesson 2: Input, conditionals and strings (7 assignments).
  • Lesson 3: Iterations (for- and while-loops) and functions (5 assignments).
  • Lesson 4: Data Structures (Lists, Dictionaries, sets) and recursion (8 assignments).
  • Lesson 5: Built-in Python Modules and basic Data Science using NumPy (4 assignments).
  • Lesson 6: Object Oriented Programming (4 assignments).


All Introduction to Python assignments are available through the Community Library.

Step 1: Create empty assignments

For each assignment you want to use, you have to create an empty CodeGrade assignment. Either in your LMS or standalone. Follow this guide: Create assignment.

Step 2: Import from Community Library

The assignments will be available in the Community Library. You can find more information on how to do that here: Community Library.

Step 3: Tweaking the assignments

Some common tweaks that you may consider for your course, depending on your learning goals:
  • Grades published: toggle grades published to “Yes” so that students can see all instant automatic feedback and grades are automatically sent to your LMS.
  • Toggling the editor: by default, students have access to CodeGrade’s built-in editor for all assignments (and are presented with a template to start with). If you wish, you can toggle this and only allow uploading files.
  • Deadlines: a deadline is required for each assignment. If your course is self-paced, it is recommended to set a deadline in the far future to simulate that in CodeGrade. Deadlines are set from within your LMS.
  • Rubric and test descriptions: pre-made rubrics and test descriptions are available for all assignments. You may customize these in any way you want to better reflect your learning style and goals or to make certain elements more clear to students.
  • Distributing templates and required files: some assignments require additional (input) files for the students (e.g. a .csv dataset or a .txt input file for lexical analysis). These files are automatically provided as template in CodeGrade if the editor is turned on. It is a good idea to share these files via the LMS with your students too.


We are here to make your course a success! Reach out to use at [email protected].