Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions Advanced/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
<img width="300" src="https://user-images.githubusercontent.com/112943652/221200590-93edf542-a3af-4719-ab46-bc50390e1946.png">

| Python Advanced |
| ---------------- |
| <a href="1.Stacks, Queues, Tuples and Sets">Stacks, Queues, Tuples and Sets</a> |
Expand Down
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
class Vehicle:

def __init__(self, mileage, max_speed=150):
self.mileage = mileage
self.max_speed = max_speed
self.gadgets = []

15 changes: 15 additions & 0 deletions OOP/2.Classes and Objects/Classes and Objects - Lab/02. Point.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
class Point:

def __init__(self, x, y):
self.x = x
self.y = y

def set_x(self, new_x):
self.x = new_x

def set_y(self, new_y):
self.y = new_y

def __str__(self):
return f"The point has coordinates ({self.x},{self.y})"

21 changes: 21 additions & 0 deletions OOP/2.Classes and Objects/Classes and Objects - Lab/03. Circle.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
class Circle:
pi = 3.14

def __init__(self, radius):
self.radius = radius

def set_radius(self, new_radius):
self.radius = new_radius

def get_area(self):
return self.radius ** 2 * Circle.pi

def get_circumference(self):
return self.radius * 2 * Circle.pi


''' TEST '''
# circle = Circle(10)
# circle.set_radius(12)
# print(circle.get_area())
# print(circle.get_circumference())
19 changes: 19 additions & 0 deletions OOP/2.Classes and Objects/Classes and Objects - Lab/04. Glass.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
class Glass:
capacity = 250

def __init__(self):
self.content = 0

def fill(self, ml):
if self.content + ml <= Glass.capacity:
self.content += ml
return f"Glass filled with {ml} ml"
return f"Cannot add {ml} ml"

def empty(self):
self.content = 0
return "Glass is now empty"

def info(self):
return f"{Glass.capacity - self.content} ml left"

Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
class Smartphone:

def __init__(self, memory):
self.memory = memory
self.apps = []
self.is_on = False

def power(self):
self.is_on = False if self.is_on else True

def install(self, app, app_memory):
if self.memory - app_memory >= 0 and self.is_on:
self.memory -= app_memory
self.apps.append(app)
return f"Installing {app}"

elif self.memory - app_memory >= 0:
return f"Turn on your phone to install {app}"

return f"Not enough memory to install {app}"

def status(self):
return f"Total apps: {len(self.apps)}. Memory left: {self.memory}"

4 changes: 4 additions & 0 deletions OOP/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,7 @@
| ------------------------ |
| <a href="1.First Steps in OOP/First Steps in OOP - Lab">First Steps in OOP</a> |
| <a href="1.First Steps in OOP/First Steps in OOP - Exercise">Exercise: First Steps in OOP</a> |
| ----------------------------- |
| <a href="2.Classes and Objects">Classes and Objects</a> |
| ------------------ |
| <a href="2.Classes and Objects/Classes and Objects - Lab">Classes and Objects</a> |
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,16 @@ Course Lecturer - **[Mario Zahariev](https://github.com/zahariev-webbersof)**
<br>
Course Exercise Lecturer - **[Diyan Kalaydzhiev](https://github.com/DiyanKalaydzhiev23)**

<!-- <p float="left"> -->
<img width="250" src="https://user-images.githubusercontent.com/112943652/221198735-55e4de81-cd84-4e13-b77d-505d7eb1ba03.png">
<!-- <img width="250" src="https://user-images.githubusercontent.com/112943652/221198735-55e4de81-cd84-4e13-b77d-505d7eb1ba03.png"> -->
<!-- </p> -->

| Python Advanced | Python OOP |
| --------------- | ---------- |
| <a href="Advanced">Advanced</a> | <a href="OOP">Object Oriented Programming</a> |
| <a href="Advanced/1.Stacks, Queues, Tuples and Sets">Stacks, Queues, Tuples and Sets</a> | <a href="OOP/1.First Steps in OOP">First Steps in OOP</a> |
| <a href="Advanced/2.Multidimensional Lists">Multidimensional Lists (AKA matrix)</a> | Classes and Objects |
| <a href="Advanced/2.Multidimensional Lists">Multidimensional Lists (AKA matrix)</a> | <a href="OOP/2.Classes and Objects">Classes and Objects</a> |
| <a href="Advanced/3.Functions Advanced">Functions Advanced</a> | Inheritance |
| <a href="Advanced/4.Error Handling">Error Handling</a> | Encapsulation |
| <a href="Advanced/5.File Handling">File Handling</a> | Static and Class Methods |
Expand Down
2 changes: 2 additions & 0 deletions advanced_cretificate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
![Advanced certificate](https://user-images.githubusercontent.com/112943652/221198735-55e4de81-cd84-4e13-b77d-505d7eb1ba03.png)
![Advanced curriculum](https://user-images.githubusercontent.com/112943652/221198752-04b2dfab-b8fb-4688-8c17-1c5a5986513b.png)