We may earn an affiliate commission when you visit our partners.
Pluralsight logo

Core Python 3

Custom Attributes and Descriptors

Robert Smallshire and Austin Bingham

Python has a dynamism which can give our objects superpowers. This course will teach you how to implement highly flexible interfaces with where the attributes of objects are determined on-the-fly, rather than being determined in advance by classes.

Read more

Python has a dynamism which can give our objects superpowers. This course will teach you how to implement highly flexible interfaces with where the attributes of objects are determined on-the-fly, rather than being determined in advance by classes.

When classes are too rigid, but dictionaries too flexible, you can often find a good trade-off with dynamic objects. In this course, Core Python 3: Custom Attributes and Descriptors, you’ll learn to make objects with highly dynamic interfaces. First, you’ll explore how objects are internally represented in Python. Next, you’ll discover how to customize object attribute access. Finally, you’ll learn how to define your own descriptors, which form the basis of much of how Python attributes work. When you’re finished with this course, you’ll have the skills and knowledge of Python object customization needed to produce flexible and expressive code.

Enroll now

What's inside

Syllabus

Course Overview
Object Internals
Class Internals
Optimizing memory usage with slots
Read more
Descriptors

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches how to implement highly flexible interfaces, which is standard in the field of software development
Taught by Robert Smallshire and Austin Bingham, who are recognized for their work in software and data
Develops Python skills and knowledge, which are core for software development
Covers customizing object attribute access, which can add color and detail to custom software

Save this course

Save Core Python 3: Custom Attributes and Descriptors to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for Core Python 3: Custom Attributes and Descriptors. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Core Python 3: Custom Attributes and Descriptors will develop knowledge and skills that may be useful to these careers:
Machine Learning Engineer
Machine learning engineers build and deploy machine learning models. Python is one of the most popular languages for machine learning. A background in object-oriented programming is very helpful for any ML engineer. This course helps build that foundation.
Data Engineer
Data engineers are responsible for managing and processing large datasets. A background in object-oriented programming is very helpful for any data engineer. This course can help build that foundation, with particular focus on Python.
Cloud Engineer
Cloud engineers are responsible for building, deploying, and managing cloud-based applications and infrastructure. Python is a popular language for cloud computing. This course is recommended for anyone looking to specialize in Python-based cloud systems.
Data Scientist
Data scientists leverage programming to uncover patterns in large datasets. A background in object-oriented programming is very helpful for any data scientist. This course helps build that foundation, with particular focus on Python.
Data Analyst
Data analysts use programming to uncover patterns in large datasets. Python is popular for its simplicity and ease of use. This course is recommended for anyone seeking to enhance their Python skills, including data analysts, especially those working on Python codebases.
Quantitative Analyst
Quantitative analysts develop and apply mathematical models to financial data. Python is one of the most popular languages for quantitative finance. A background in object-oriented programming is very helpful for any quant. This course helps build that foundation.
Software Architect
Software architects design the overall structure of complex software systems. A background in object-oriented programming is very helpful for any software architect. This course helps build that foundation, with particular focus on Python.
Full Stack Engineer
Full-stack engineers work on both the front end and back end of web applications. Python is a popular back-end language. Customizing object attributes and descriptors is a core component of full-stack engineering in Python.
Software Engineer
A software engineering team may use many programming languages and paradigms. Python is popular for its simplicity and ease of use. This course is recommended for anyone seeking to enhance their Python skills, including software engineers, especially those working on Python codebases.
Database Administrator
Database administrators keep databases running efficiently. Many databases are built on Python. This course is recommended for anyone seeking to enhance their Python skills, including database administrators.
DevOps Engineer
DevOps engineers are responsible for bridging software development and operations. One ensures that any infrastructure can run Python effectively. This course is recommended for any DevOps Engineer working with Python codebases. Customizing object attributes and descriptors is a core component of Python back-ends
Web Developer
Web developers build and maintain websites. Python is a common back-end language used by web developers. This course is highly recommended for web developers using Python back-ends.
Security Engineer
Security engineers design and implement security measures for computer systems and networks. Python is a popular general-purpose programming language. This course is recommended for anyone seeking to enhance their Python skills, including security engineers.
Systems Engineer
Systems engineers design, integrate, and maintain complex systems. Python is one of the most popular general-purpose programming languages. This course is recommended for anyone seeking to enhance their Python skills, including systems engineers.
Computer Scientist
Computer scientists conduct research on the foundations of computing. Python is one of the most popular languages for scientific computing. A background in object-oriented programming is very helpful for any computer scientist. This course helps build that foundation.

Reading list

We've selected 12 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Core Python 3: Custom Attributes and Descriptors.
Delves into the intricacies of Python's design, offering a comprehensive exploration of its object-oriented features and providing valuable insights into Python's internal workings.
This concise and accessible reference guide provides a thorough overview of Python's syntax and built-in functions, offering a solid foundation for understanding the course's concepts.
This beginner-friendly book provides a comprehensive introduction to object-oriented programming in Python, covering fundamental concepts such as classes, objects, and inheritance.
This extensive cookbook offers a collection of practical recipes and solutions to common programming problems, providing a valuable resource for enhancing Python skills.
This classic text explores design patterns in object-oriented programming, providing guidelines for creating flexible and reusable code.
This concise reference provides a quick and easy way to look up Python syntax and functions, serving as a handy tool for both beginners and experienced programmers.
Introduces Python programming through a series of fun and practical projects, making it a great choice for beginners.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser