This comprehensive course is designed to guide learners from foundational to advanced programming practices in Python, with a strong emphasis on functional problem-solving and object-oriented design. Throughout six structured modules, learners will apply, analyze, and create solutions using real-world constructs such as user-defined functions, recursion, classes, inheritance, sequences, and generators.



Compétences que vous acquerrez
- Catégorie : Algorithms
- Catégorie : Software Design Patterns
- Catégorie : Programming Principles
- Catégorie : Python Programming
- Catégorie : Functional Design
- Catégorie : Data Structures
- Catégorie : Object Oriented Programming (OOP)
- Catégorie : Debugging
- Catégorie : Computer Programming
Détails à connaître

Ajouter à votre profil LinkedIn
juillet 2025
18 devoirs
Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées

Il y a 6 modules dans ce cours
This module introduces foundational programming concepts in Python with a focus on abstraction and functional design. Learners will explore how to build and reuse functions, pass parameters effectively, and apply these principles to solve structured problems. Through hands-on examples, they will understand how to decompose complex problems, work with mutable data structures, and reverse processes using Pythonic techniques. The module aims to build clarity around scoping, parameter passing, and iterative transformation of data.
Inclus
8 vidéos3 devoirs
This module explores the foundational and advanced aspects of recursion in Python, along with the use of functional programming tools. Learners will delve into variable scope and nested environments, understand the mechanics of recursive function calls, and apply recursion to classic problems such as factorials, exponentiation, and binary search. In addition, learners will harness the power of Python's built-in functional utilities like map() and filter() to process data efficiently and declaratively.
Inclus
6 vidéos3 devoirs
This module introduces core object-oriented programming (OOP) principles in Python, including polymorphism, encapsulation, and inheritance. Learners will explore how to define class attributes and methods, override functionality across subclasses, restrict access to internal data using encapsulation, and create flexible designs that use shared behavior across multiple types. Through hands-on examples, learners will gain experience with customizing object behavior and managing access to class internals using Python’s naming conventions and object-oriented syntax.
Inclus
7 vidéos3 devoirs
This module explores advanced object-oriented programming concepts in Python, including the structure and behavior of class namespaces, multiple inheritance, and robust error-handling mechanisms. Learners will understand how Python manages class and object attributes, how to define and manage multiple superclasses, and how to construct and handle exceptions using custom exception classes. The module also demonstrates best practices for catching, raising, and managing multiple exceptions within Python functions, allowing learners to write safer, more maintainable code.
Inclus
7 vidéos3 devoirs
This module focuses on the use of constructors, class inheritance tools, and special methods that enable Python objects to behave like built-in data structures. Learners will gain insight into constructor customization using __init__, access parent functionality using super(), and implement sequence and mapping behavior using magic methods like __getitem__, __setitem__, and __len__. The module concludes with lessons on subclassing and enhancing class functionality by overriding or extending existing behavior, allowing learners to build complex, reusable, and Pythonic object models.
Inclus
7 vidéos3 devoirs
This module explores specialized object-oriented features in Python, including the use of static and class methods, property-based attribute access, and iteration protocols. Learners will understand how to use decorators like @staticmethod and @classmethod, intercept attribute access with __getattr__, and implement both custom iterators and recursive generators. Through these topics, learners will enhance their ability to write Pythonic, reusable, and memory-efficient code using advanced techniques in class design and data handling.
Inclus
6 vidéos3 devoirs
Obtenez un certificat professionnel
Ajoutez ce titre à votre profil LinkedIn, à votre curriculum vitae ou à votre CV. Partagez-le sur les médias sociaux et dans votre évaluation des performances.
En savoir plus sur Software Development
- Statut : Prévisualisation
Board Infinity
- Statut : Essai gratuit
University of Pennsylvania
- Statut : Essai gratuit
Microsoft
- Statut : Essai gratuit
Rice University
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?





Ouvrez de nouvelles portes avec Coursera Plus
Accès illimité à 10,000+ cours de niveau international, projets pratiques et programmes de certification prêts à l'emploi - tous inclus dans votre abonnement.
Faites progresser votre carrière avec un diplôme en ligne
Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne
Rejoignez plus de 3 400 entreprises mondiales qui ont choisi Coursera pour les affaires
Améliorez les compétences de vos employés pour exceller dans l’économie numérique
Foire Aux Questions
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Plus de questions
Aide financière disponible,