• raspberry pi
  • National Centre for Computing Education logo

Object-oriented Programming in Python: Create Your Own Adventure Game

Learn object-oriented programming principles by creating your own text-based adventure game in Python. Supported by Google.

60,398 enrolled on this course

A illustration of various characters and programming concepts from the course
  • Duration

    4 weeks
  • Weekly study

    2 hours

A fun introduction to object-oriented programming in Python

Object-oriented programming is a programming paradigm based on objects and data rather than actions and logic.

This online course will introduce you to the principles of object-oriented programming in Python, showing you how to create objects, functions, methods, and classes.

You’ll use what you learn to create your own text-based adventure game. You will have the chance to share your code with other learners, and see theirs.

If you’re an educator, you’ll also be able to develop ideas for using object-oriented programming in your classroom.

Download video: standard or HD

Skip to 0 minutes and 3 seconds You move through the corridor into a dark kitchen. A skeleton springs from the shadows, holding a melon? Before you can draw your sword, the monster crushes you with the oversized fruit. And it’s game over. How can you write your own text-based adventure game like this using the programming language Python? You’ll explore classes, methods, and attributes. And you’ll learn about abstraction, inheritance, and polymorphism. You’ll also take part in practical activities to extend existing classes and to create your own program. This four-week course contains peer-led discussions, trainer interaction, and feedback on your knowledge as you progress. You can learn whenever and wherever you want.

Skip to 0 minutes and 51 seconds So, whether you’re a teacher with students of your own or simply curious about Python, this course will help you take your first steps in object-oriented programming. Sign up now at rpf.io/oop

What topics will you cover?

  • Introduce the principles of object-oriented programming in Python.
  • Understand the difference between a function and an object.
  • Create objects, functions, methods, and classes.
  • Write a text-based adventure game.
  • Extending other people’s classes, including inheritance and polymorphism.
  • Share your code with other learners, and see theirs.
  • Develop ideas for using object-oriented programming in the classroom.

When would you like to start?

  • Date to be announced

Add to Wishlist to be emailed when new dates are announced

Learning on this course

On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?

By the end of the course, you‘ll be able to...

  • Explore using objects in programming, and understand the difference between a function and an object.
  • Develop your understanding of how writing your own class allows you to combine functions and data.
  • Demonstrate extending other people’s classes, including inheritance and polymorphism.
  • Produce a module to apply your learning of object oriented programming.
  • Collaborate by sharing your code with other people.

Who is the course for?

This course is designed for people who are already familiar with Python programming and want to learn a different programming paradigm, understand and use existing libraries more effectively, or create code which is useful to other people.

It will be particularly useful for educators and students of a post-16 qualification.

What software or tools do you need?

Python 3

What do people say about this course?

"Best short course I've done. I've learnt programming concepts I've struggled with previously without even trying."

"This was such a simple and informative course, I learnt things that I was previously confused about. I'm not an expert but I am proud to say that I now know so much more than before I started this course."

Who will you learn with?

Laura creates and maintains Raspberry Pi educational resources. Aside from computers, she loves cats, cakes, board games and making jam.

I love technology and creating projects and learning resources for Raspberry Pi. As a child I wanted to be either a computer scientist, astronaut or snowboard instructor.

Who developed the course?

Raspberry Pi Foundation

The Raspberry Pi Foundation works to put the power of digital making into the hands of people all over the world, so they are capable of understanding and shaping our increasingly digital world.

National Centre for Computing Education

This course is part of the National Centre for Computing Education (NCCE). Funded by the Department for Education and partners, we aim to change the way computing is taught in schools across England, and enable more young people to benefit from studying this important subject.

If you are a teacher in England you can get free upgraded access to this course, and use it towards NCCE certification. To do this, you must join the course through the Teach Computing website

Endorsers and supporters

supported by

Google logo

Learning on FutureLearn

Your learning, your rules

  • Courses are split into weeks, activities, and steps to help you keep track of your learning
  • Learn through a mix of bite-sized videos, long- and short-form articles, audio, and practical activities
  • Stay motivated by using the Progress page to keep track of your step completion and assessment scores

Join a global classroom

  • Experience the power of social learning, and get inspired by an international network of learners
  • Share ideas with your peers and course educators on every step of the course
  • Join the conversation by reading, @ing, liking, bookmarking, and replying to comments from others

Map your progress

  • As you work through the course, use notifications and the Progress page to guide your learning
  • Whenever you’re ready, mark each step as complete, you’re in control
  • Complete 90% of course steps and all of the assessments to earn your certificate

Want to know more about learning on FutureLearn? Using FutureLearn

Learner reviews

Learner reviews cannot be loaded due to your cookie settings. Please and refresh the page to view this content.

Do you know someone who'd love this course? Tell them about it...

You can use the hashtag #RPiLearn to talk about this course on social media.