• FutureLearn logo

Introduction to Programming with Python

Build your programming skills and learn the basics of the Python programming language, from logic and functions to debugging.

5,998 enrolled on this course

Introduction to Programming with Python

5,998 enrolled on this course

  • 4 weeks

  • 3 hours per week

  • Digital certificate when eligible

  • Introductory level

Find out more about how to join this course

Discover the fundamentals of software development

Software development is a continuously growing industry with many opportunities for employment.

On this four-week course, you’ll master the basics of Python, a relatively simple programming language that is widely used in multiple industries.

Lay the foundations of programming

You’ll start this course by examining Python and how it compares to other programming languages. Then, you’ll start your journey to becoming a Python programmer by exploring the standards and conventions of the language and running a simple Python function test.

Learn the basic functions of Python

Through this course, you’ll gain immediate practical benefits for your career growth and professional development by building your programming skills in Python.

The second week of this course will guide you through the basics of the programming language, looking at variables, logic, functions, and loops. You’ll also be given practical tasks to complete at the end of each section to truly cement your new skills.

Explore how to improve your programs

Programming, at its core, is about problem-solving. It requires a lot of concentration, effort, and energy, so programmers are always looking for ways to be more efficient. That’s where debugging and version control come in.

You’ll look at the different types of errors that you can encounter while programming and the ways that you can approach debugging. Then, you’ll explore version control, specifically using Git and GitHub, which is a crucial tool in programming, especially when working as part of a development team.


  • Week 1

    Getting started with Python

    • Welcome to Python

      Explore the course, introduce yourself to your fellow learners, and learn how Python came into being and why it’s so important. You will also install and set up Python and write your first program in this activity.

    • Becoming a Python programmer

      Once you have taken your first steps in Python programming, learn more about how to become a high-performing developer in this activity.

    • Wrap-up

      So far this week, you’ve set yourself up for programming success. Now it’s time to join the Python community, which is a key step in your professional development. You’ll also reflect, share, and look ahead to Week 2.

  • Week 2

    Python basics

    • Variables

      Variables are perhaps the most important element in programming. Learn how to create different types of variables and how to use them to process information in this activity.

    • Adding logic to programs

      A program doesn’t have to be entirely linear. You can write it to behave differently depending on conditions that you set. Learn how to use if, elif, and else statements to add branching structures in your code.

    • Functions

      When it comes to coding, efficiency and modularity are key objectives. Learn how functions make code more efficient and modular, and how to create your own in this activity.

    • Loops

      Sometimes, you need to do the same thing multiple times, but, luckily, you don’t need to write the same code over and over again. Learn how to automate repetitive actions in your Python programs using loops.

    • Wrap-up

      You’ve learned a lot this week! Now it’s time to consolidate and practise your new coding skills with a slightly more challenging activity. You’ll also reflect, share, and look ahead to Week 3.

  • Week 3

    Improving your programs

    • Debugging

      Mistakes happen. Errors are inevitable. Fortunately, programmers have tools and techniques for systematically dealing with bugs. Learn about bugs and how to solve them in this activity.

    • Version control

      A big, complex Python project could be tricky to manage. How do you keep track of what you’re doing? Learn how programmers maintain software and collaborate using version control systems in this activity.

    • Wrap-up

      You’ve learned important concepts and refined your skills this week. Now practise what you’ve learned in this activity. You’ll also reflect, share, and look ahead to Week 4.

  • Week 4

    Writing programs using classes and objects

    • Introducing object-oriented programming

      Object-oriented programming (OOP) is one of the core features of Python, and an important concept to grasp for modern programming in general. Learn the basic principles of OOP in this activity.

    • Using OOP

      Python implements OOP in very sophisticated, efficient ways. Learn how to use class and instance methods, and how to create child classes from parent classes in this activity.

    • Wrap-up

      You’ve mastered some important concepts and refined your skills this week. Now practise what you’ve learned in this activity. You’ll also reflect and share for the course as a whole.

When would you like to start?

Start straight away and join a global classroom of learners. If the course hasn’t started yet you’ll see the future date listed below.

  • Available now

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...

  • Engage with Python tools and resources to aid effective programming.
  • Create simple programs with basic Python elements.
  • Improve Python programs with debugging, exception handling, and version control.
  • Apply object-oriented programming principles to structure Python programs.

Who is the course for?

This course is designed for anyone interested in starting a career in programming, specifically using the Python programming language.

The course will build your foundational knowledge to pursue a number of roles such as web back-end development, application development, machine learning, or data analytics.

Who developed the course?


FutureLearn is a leading social learning platform and has been providing high quality online courses for learners around the world over the last ten years.

In collaboration with


Ways to learn

Buy this course

Subscribe & save

Limited access

Choose the best way to learn for you!

$134/one-off payment

$349.99 for one year

Automatically renews


Fulfill your current learning needDevelop skills to further your careerSample the course materials
Access to this courseticktick

Access expires 17 Jul 2024

Access to 1,000+ coursescrosstickcross
Learn at your own paceticktickcross
Discuss your learning in commentstickticktick
Certificate when you're eligiblePrinted and digitalDigital onlycross
Continue & Upgrade

Cancel for free anytime

Ways to learn

Choose the best way to learn for you!

Subscribe & save

$349.99 for one year

Automatically renews

Develop skills to further your career

  • Access to this course
  • Access to 1,000+ courses
  • Learn at your own pace
  • Discuss your learning in comments
  • Digital certificate when you're eligible

Cancel for free anytime

Buy this course

$134/one-off payment

Fulfill your current learning need

  • Access to this course
  • Learn at your own pace
  • Discuss your learning in comments
  • Printed and digital certificate when you’re eligible

Limited access


Sample the course materials

  • Access expires 17 Jul 2024

Find out more about certificates, Unlimited or buying a course (Upgrades)

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.

Get a taste of this course

Find out what this course is like by previewing some of the course steps before you join:

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