Writing Functions in Python
Learn to use best practices to write maintainable, reusable, complex functions with good documentation.
Start Course for Free4 hours15 videos46 exercises90,777 learnersStatement of Accomplishment
Create Your Free Account
or
By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.Training 2 or more people?
Try DataCamp for BusinessLoved by learners at thousands of companies
Course Description
You've done your analysis, built your report, and trained a model. What's next? Well, if you want to deploy your model into production, your code will need to be more reliable than exploratory scripts in a Jupyter notebook. Writing Functions in Python will give you a strong foundation in writing complex and beautiful functions so that you can contribute research and engineering skills to your team. You'll learn useful tricks, like how to write context managers and decorators. You'll also learn best practices around how to write maintainable reusable functions with good documentation. They say that people who can do good research and write high-quality code are unicorns. Take this course and discover the magic!
Training 2 or more people?
Get your team access to the full DataCamp platform, including all the features.In the following Tracks
- 1
Best Practices
FreeThe goal of this course is to transform you into a Python expert, and so the first chapter starts off with best practices when writing functions. You'll cover docstrings and why they matter and how to know when you need to turn a chunk of code into a function. You will also learn the details of how Python passes arguments to functions, as well as some common gotchas that can cause debugging headaches when calling functions.
- 2
Context Managers
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.
- 3
Decorators
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.
Functions are objects50 xpBuilding a command line data app100 xpReviewing your co-worker's code100 xpReturning functions for a math game100 xpScope50 xpUnderstanding scope50 xpModifying variables outside local scope100 xpClosures50 xpChecking for closure100 xpClosures keep your values safe100 xpDecorators50 xpUsing decorator syntax100 xpDefining a decorator100 xp - 4
More on Decorators
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.
Real-world examples50 xpPrint the return type100 xpCounter100 xpDecorators and metadata50 xpPreserving docstrings when decorating functions100 xpMeasuring decorator overhead100 xpDecorators that take arguments50 xpRun_n_times()100 xpHTML Generator100 xpTimeout(): a real world example50 xpTag your functions100 xpCheck the return type100 xpGreat job!50 xp
Training 2 or more people?
Get your team access to the full DataCamp platform, including all the features.In the following Tracks
collaborators
prerequisites
Python ToolboxShayne Miel
See MoreDirector of Software Engineering @ American Efficient
Join over 15 million learners and start Writing Functions in Python today!
Create Your Free Account
or
By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.