When you enroll through our links, we may earn a small commission—at no extra cost to you. This helps keep our platform free and inspires us to add more value.

Udemy logo

Functional Programming With Python

A beginner-friendly introduction to functional constructs in python

     
  • 4.6
  •  |
  • Reviews ( 81 )
₹519

This Course Includes

  • iconudemy
  • icon4.6 (81 reviews )
  • icon14h 28m
  • iconenglish
  • iconOnline - Self Paced
  • iconprofessional certificate
  • iconUdemy

About Functional Programming With Python

Welcome to the

best and most comprehensive

introduction to

functional programming

in Python! In this beginner-friendly course, you will get to learn and practice Python's functional capabilities step-by-step, from the ground up. The course will begin with a conceptual understanding of the key tenets of functional programming:

immutability

: the idea that data should not be modified in place

purity

: the practice of writing functions that do not cause side effects

higher-order functions

: treating functions as pari passu with other data types

recursion

: the pattern of writing functions that call themselves

referential transparency

: the principle that a function call can be replaced with its return value without changing the program's behavior Then, we will explore practical utilities that Python offers to help us write functional code, including:

map, filter, reduce, zip, any, all

: utilities for working with iterables

list, set, dictionary, and generator

comprehensions

: concise ways of creating lists, sets, dictionaries, and generators

generator

functions and

iterators

: functions that can be paused and resumed

variable arity

: functions that can take a variable number of arguments, unknown at the time of writing the function In the final, and longest part of the course, we will take a look at more advanced topics, including:

closures

: higher-order functions that can access non-local variables

recursion

: functions that call themselves

partial function application

: functions that return other functions, with some arguments pre-filled

currying

: a special case of partial function application

memoization

: caching the results of function calls to speed up execution

infinite iterators

: iterators that never end

functional overloading

: functions that behave differently depending on their inputs Throughtout the course, you will get to practice your newly acquired skills through a set of

more than 20 skill challenges

, each of which will be followed with a detailed video explanation of the solution that we will walk through together. This course is very beginner-friendly and no python experience is assumed. If you've never worked with Python before, there's

a full length introduction to Python programming included as an appendix

, covering the fundamentals of the language from the basic data types to containers, control flow, loops, classes, and more. See you inside!

What You Will Learn?

  • Practical fluency with map, filter, reduce, zip, any, all, list, set, dictionary, and generator comprehensions, and generator expressions .
  • Complete coverage of intermediate functional constructs in Python: generators, iterators, decorators, closures, recursion, and much more! .
  • A practical exploration of advanced topics: closures, recursion, partial function application, currying, memoization, infinite iterators, and overloading .
  • A conceptual understanding of the key tenets of functional programming: immutability, purity, higher-order functions, recursion, and referential transparency.