What is Object Oriented Programming (OOP) in Python?
Skills:
AI Pair Programming70%
Key Takeaways
Explains object-oriented programming in Python
Full Transcript
hi I'm Austin so palea with real Python comm and I welcome you to our series on object-oriented programming in Python 3 this is one of the biggest and most important subjects in all of programming and as you can see we have a lot to cover this series will provide you with a basic conceptual understanding of object-oriented programming so that you can take your Python programming skills to the next level to fully appreciate the subject we have to first understand why we need it programs are very complex things and there's a hundred different ways that you could define what a program is formally but basically all programs are a set of instructions for manipulating data in some meaningful way when I teach Python to kids I always have them write a program that calculates how many days old they are and that's a great example of a program that follows these three steps first the program has to ask the user for their birth date that's the data it's going to accept and then it manipulates the data by subtracting the current date from the user's birth date finally the program displays the result of this calculation on the screen that's a great starter program but it's pretty trivial how do we manage large programs with lots of data to keep track of like a video game as you might have guessed that's where oriented programming comes in object-oriented programming or oo P for short is a very common programming paradigm informally this means that it's a specific way of designing programs like a style that's widely used in software projects not every program should be written with oo P but many are and lots of languages support it a lot of the Python code you interact with on a daily basis will be written using oo P understanding this is a fundamental part of becoming a great Python programmer it opens the door to creating really cool software at the heart of oh oh P is the idea that a program is composed of lots of individual objects you can think of these objects as entities or things in your program oftentimes they are nouns in your project such as a person a house an email or any other entity like that these objects are like little bundles of data that are passed around throughout the life of your program for example a person might have properties like name age and home address this is the individual data that the object stores throughout its life in the program when we create this person object we'll make sure to give it a name and age and an address objects also have behaviors these are the actions that the object can take our person should be able to walk talk and breathe for example oftentimes these behaviors will need to reference the properties of the object for example if we make our talk behavior print the name and the age of the person then our person object would need to know what its name and ages those properties we gave it earlier before if this all seems a little bit confusing right now don't worry when I started programming this was the first real hurdle I ran into and it just took some dedication and practice till I finally understood it will make heavy use of objects throughout the rest of the series and you'll love the feeling you get when it just clicks for you in the next video we'll learn how to define our own objects using Python classes I'll see you there
Original Description
Learn what object-oriented programming (OOP) is and why it’s used in Python programming.
Lots of popular frameworks and libraries are written using OOP, so it’s a good tool to have in your Python toolkit.
OOP is a programming paradigm, or a specific way of designing a program. It allows us to think of the data in our program in terms of real-world objects, with both properties and behaviors. These objects can be passed around throughout our program.
Click here to learn more about this topic: https://realpython.com/courses/intro-object-oriented-programming-oop-python/
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from Real Python · Real Python · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
A better Python REPL – bpython vs python interpreter
Real Python
Introducing large-type.com – A Utility Website
Real Python
Reading Hacker News Without Wasting Tons of Time
Real Python
Forward References and Python 3 Type Hints
Real Python
Using Sublime Text as your Git Editor
Real Python
Python Code Linting and Auto-Complete for Sublime Text
Real Python
Make your Python Code More Readable with Custom Exceptions
Real Python
Write Better Tests with Sublime Text's Split Layout Feature
Real Python
How to Use Sublime Text from the Command Line
Real Python
Rename Variables with Multiple Selection in Sublime Text
Real Python
Sublime Text Settings for Writing PEP 8 Python
Real Python
Write Cleaner Python with Sublime Text's Indent Guides
Real Python
Sublime Text Whitespace Settings for Python Development
Real Python
Function Argument Unpacking in Python
Real Python
Python Code Review: Debugging and Refactoring "Conway's Game of Life" + Automated Tests
Real Python
Using "get()" to Return a Default Value from a Python Dict
Real Python
A Python Shorthand for Swapping Two Variables
Real Python
Python Code Review: Refactoring a Web Scraper, PEP 8 Style Guide Compliance, requirements.txt
Real Python
Click & Jump to Test Failures from the Command Line (iTerm2)
Real Python
Setting up Sublime Text for Python Developers
Real Python
Sublime Text + Python Guide Overview
Real Python
Python Code Review: Adding Pytest Tests to an Existing Python Web Scraper
Real Python
Type-Checking Python Programs With Type Hints and mypy
Real Python
A Shorthand for Merging Dictionaries in Python 3.5+
Real Python
Python Code Review Flask Web Security Tutorial + Virtualenvs, requirements.txt
Real Python
My Python Code Looks Ugly and Confusing – Help!
Real Python
Setting Up a Programmer Portfolio/Developer Blog – How To Get Started
Real Python
Do I Need a GitHub/GitLab/Bitbucket Profile as a Developer?
Real Python
Programmer Portfolio – Example and Walkthrough
Real Python
How to Get Your 1st Speaking Gig at a Tech Conference
Real Python
How to Build Your Public Speaking Skills as a Developer
Real Python
The Object-oriented Version of "Spaghetti Code" is "Lasagna Code" ?!
Real Python
Setting up Sublime Text for Python Developers – Lesson #1
Real Python
Cool New Features in Python 3.6
Real Python
"is" vs "==" in Python – What's the Difference? (And When to Use Each)
Real Python
Emulating switch/case Statements in Python with Dictionaries
Real Python
Python Function Argument Unpacking Tutorial (* and ** Operators)
Real Python
What Code Should I Put On My GitHub/GitLab/BitBucket Profile?
Real Python
A Crazy Python Dictionary Expression ?!
Real Python
String Conversion in Python: When to Use __repr__ vs __str__
Real Python
Method Types in Python OOP: @classmethod, @staticmethod, and Instance Methods
Real Python
Optional Arguments in Python With *args and **kwargs
Real Python
Python Context Managers and the "with" Statement (__enter__ & __exit__)
Real Python
Installing Python Packages with pip and virtualenv / venv
Real Python
"For Each" Loops in Python with enumerate() and range()
Real Python
Python Code Review: LibreOffice Automation and the Python Standard Library
Real Python
Managing Python Dependencies With Pip and Virtual Environments – Lesson #1
Real Python
Python Tutorial: List Comprehensions Step-By-Step
Real Python
Leveraging Python's Implicit "return None" Statements
Real Python
What's the meaning of underscores (_ & __) in Python variable names?
Real Python
Python Data Structures: Sets, Frozensets, and Multisets (Bags)
Real Python
Writing automated tests for Python command-line apps and scripts
Real Python
How to find great Python packages on PyPI, the Python Package Repository
Real Python
Immutable vs Mutable Objects in Python
Real Python
PyPI vs Warehouse, the Next-Generation Python Package Repository
Real Python
pep8.org — The Prettiest Way to View the PEP 8 Python Style Guide
Real Python
My Experience at PyCon 2017 in Portland
Real Python
Pylint Tutorial – How to Write Clean Python
Real Python
"Reverse a List in Python" Tutorial: Three Methods & How-to Demos
Real Python
Python Refactoring: "while True" Infinite Loops & The "input" Function
Real Python
More on: AI Pair Programming
View skill →Related Reads
📰
📰
📰
📰
ChatGPT Work Just Dropped — And I’ve Spent 5 Hours Diving Deep. Here’s What I Found.
Medium · ChatGPT
I Built an iOS BLE App with AI — Starting From Documents, Not Prompts
Medium · Programming
Your AI Coding Agent Might Be a Security Nightmare — And Here’s Proof
Medium · AI
Your AI Coding Agent Might Be a Security Nightmare — And Here’s Proof
Medium · Cybersecurity
🎓
Tutor Explanation
DeepCamp AI