The tracks helped me complete my journey without feeling lost. Each course builds on the last, keeping me motivated and on track
Track
Level-up your programming skills. Learn how to optimize code, write functions and tests, and use best-practice software engineering techniques.
Loved by learners at thousands of companies
Make progress on the go with our mobile courses and daily 5-minute coding challenges.
The tracks helped me complete my journey without feeling lost. Each course builds on the last, keeping me motivated and on track

DataCamp helped me transition from someone curious about data to someone actively applying these skills in my job
I've been using DataCamp for four years, and it's helped me transition from filling gaps in my skills to proactively creating value for my company
Machine Learning Engineer at Eastman
Chapter
If you've ever seen the "with" keyword in Python and wondered what its deal was, then this is the chapter for you! Context managers are a convenient way to provide connections in Python and guarantee that those connections get cleaned up when you are done using them. This chapter will show you how to use context managers, as well as how to write your own.
If you've ever seen the "with" keyword in Python and wondered what its deal was, then this is the chapter for you! Context managers are a convenient way to provide connections in Python and guarantee that those connections get cleaned up when you are done using them. This chapter will show you how to use context managers, as well as how to write your own.
Chapter
Decorators are an extremely powerful concept in Python. They allow you to modify the behavior of a function without changing the code of the function itself. This chapter will lay the foundational concepts needed to thoroughly understand decorators (functions as objects, scope, and closures), and give you a good introduction into how decorators are used and defined. This deep dive into Python internals will set you up to be a superstar Pythonista.
Decorators are an extremely powerful concept in Python. They allow you to modify the behavior of a function without changing the code of the function itself. This chapter will lay the foundational concepts needed to thoroughly understand decorators (functions as objects, scope, and closures), and give you a good introduction into how decorators are used and defined. This deep dive into Python internals will set you up to be a superstar Pythonista.
Chapter
Now that you understand how decorators work under the hood, this chapter gives you a bunch of real-world examples of when and how you would write decorators in your own code. You will also learn advanced decorator concepts like how to preserve the metadata of your decorated functions and how to write decorators that take arguments.
Now that you understand how decorators work under the hood, this chapter gives you a bunch of real-world examples of when and how you would write decorators in your own code. You will also learn advanced decorator concepts like how to preserve the metadata of your decorated functions and how to write decorators that take arguments.
Course
Learn to write efficient code that executes quickly and allocates resources skillfully to avoid unnecessary overhead.
Learn to write efficient code that executes quickly and allocates resources skillfully to avoid unnecessary overhead.
Course
Learn about modularity, documentation, and automated testing to help you solve data science problems more quickly and reliably.
Learn about modularity, documentation, and automated testing to help you solve data science problems more quickly and reliably.
Python Programming
Track
Complete
Yes! This track is suitable for beginners and does not require any knowledge of Python to get started. It is designed for users to start and further develop their own Python programming skills.
This Track is based on the Python programming language.
This Track is designed to help users develop skills that are relevant for many careers. This includes data analysts, software engineers, and machine learning practitioners.
The Track will provide users with the opportunity to gain the skills and knowledge needed to build a career in Python programming, such as writing functions, software engineering, and object-oriented programming. By the end of the Track, users will be enabled to read, reuse, and maintain their own Python code.
This Track typically takes 19 hours to complete.
A skills track focuses on developing mastery of Python programming language and related skills to be successful in a career. A career track is designed to help users prepare for a specific job related to Python, such as a software engineer or a data analyst.
This Track will utilize packages such as pandas, NumPy, setuptools, pytest, and pycodestyle to practice Python programming.