Core Python: Functions and Functional Programming

A key to Python's expressiveness lies in its model of functions and the tools it provides for working with them. In this course, you'll learn more about Python's concept of "callable objects" and some sophisticated ways to use them in your programs.
Course info
Rating
(18)
Level
Intermediate
Updated
Mar 3, 2020
Duration
1h 17m
Table of contents
Description
Course info
Rating
(18)
Level
Intermediate
Updated
Mar 3, 2020
Duration
1h 17m
Description

In Python, as with most programming languages, functions are a fundamental tool for managing program complexity. Understanding how to use functions fluently is a key skill on the road to mastering Python, as is knowing alternative techniques for the cases where functions are insufficient for your needs. In this course, Core Python: Functions and Functional Programming, you'll learn about some of the finer details of using functions as well as more general concepts that subsume them. First, you'll look at the various types of callable objects in Python, along with extended argument definition and calling syntax. Then, you'll explore local functions and the concept of closures that allow them to work. Next, you'll discover Python's powerful system of decorators which allow you to enhance or modify existing functions. Finally, you'll understand the functional-style programming tools in Python along with advanced use of comprehensions. By the end of this course, you'll have a deeper understanding of Python's sophisticated approach to calling functions, and you'll see that functions are actually just one aspect of a more general set of concepts in the language.

About the author
About the author

Austin is a founding director of Sixty North, a software consulting, training, and application development company. He's a native of Texas but currently lives in Norway where he writes software, runs a local software interest group, and presents and teaches whenever he can.

More from the author
Core Python: Robust Resource and Error Handling
Intermediate
1h 14m
Jun 29, 2020
Core Python: Classes and Object-orientation
Intermediate
2h 54m
Jun 2, 2020
More courses by Austin Bingham
About the author

Robert Smallshire is a founding director of Sixty North, a software product and consulting business in based in Norway. He has held several senior software architecture and technical management roles, and he is a regular conference speaker. Python is his weapon of choice.

More from the author
Core Python: Robust Resource and Error Handling
Intermediate
1h 14m
Jun 29, 2020
Core Python: Classes and Object-orientation
Intermediate
2h 54m
Jun 2, 2020
More courses by Robert Smallshire
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi, everyone. My name is Austin Bingham, and welcome to my course, Core Python: Functions and Functional Programming. I'm a founder and principal consultant at Sixty North. In Python, as with most programming languages, functions are a fundamental tool for managing program complexity. Understanding how to use functions fluently is a key skill on the road to mastering Python, as is knowing alternative techniques for the cases where functions are insufficient for your needs. In this course, we'll look at some of the finer details of using functions, as well as more general concepts that subsume them. Some of the major topics we will cover include the notion of callables, a generalization of functions that includes several other constructs in Python; lambdas, a less powerful form of functions that don't require names; extended forms of Python's formal argument and calling syntax; the concept of closures, whereby functions can retain access to objects that might otherwise be garbage collected; decorators, a powerful technique for augmenting functions without modifying the functions themselves; tools for writing Python in a functional style; advanced use of comprehensions, including nesting and the use of multiple inputs. By the end of this course, you'll have a deeper understanding of Python's sophisticated approach to calling functions, and you'll see that functions are actually just one aspect of a more general set of concepts in the language. Before beginning the course, you should be familiar with the basic use of functions in Python, and you should be familiar with both comprehensions and generator expressions. From here, you should feel comfortable diving into other core Python language courses on robust resource and error handling; introspection; numeric types, dates and times. I hope you will join me on this journey to learn more about functions in Python with the Core Python: Functions and Functional Programming course, at Pluralsight.