Object-Oriented Programming in Python
Object-Oriented Programming in Python
object-oriented
1-16
programming
Let's 2-16
start
Classes/Objects
Python is an object oriented
programming language .Almost
everything in Python is an object,
with its properties and methods.
A Class is like an object constructor,
or a "blueprint" for creating objects.
danial soleimany
3-16
Create a Class
Create a class named "Person", with a
property named "favorite":
ex.
class Person:
favorite = "Programming"
danial soleimany
4-16
Create Object
Now we can use the class named Person
to create objects
ex.
p1 = Person()
print(p1.favorite)
output
'Programming'
danial soleimany
great 5-16
job!
The __init__() Function
6-16
selfie?
7-16
ex.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("Danial", 23)
print(p1.name)
print(p1.age)
output
'Danial'
23
Note: The __init__() function is called automatically every time the
class is being used to create a new object.
danial soleimany
wanna 8-16
more?
The __str__() Function
9-16
ex.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("Danial", 23)
print(p1)
output
<__main__.Person object at 0x0000022CCF3B7D60>
danial soleimany
10-16
ex 2.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"{self.name}, {self.age}"
p1 = Person("Danial", 23)
print(p1)
output
Danial, 23
danial soleimany
easy!
11-16
Object Methods
12-16
ex
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def myfunc(self):
print("Hello my name is " + self.name)
p1 = Person("Danial", 23)
p1.myfunc()
output
'Hello my name is Danial'
13-16
ex 2.
class Person:
def __init__(mysillyobject, name, age):
mysillyobject.name = name
mysillyobject.age = age
def myfunc(abc):
print("Hello my name is " + abc.name)
p1 = Person("Danial", 23)
p1.myfunc()
output
'Hello my name is Danial'
danial soleimany
haha!
14-16
p1.age = 40
print(p1.age)
p1.name = "Jack"
print(p1.name)
output
Delete Objects
16-16
follow
for more