-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8256ec5
commit 3536752
Showing
7 changed files
with
62 additions
and
4 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
from app.people.customer import Customer | ||
|
||
|
||
class CinemaBar: | ||
|
||
@staticmethod | ||
def sell_product(product: str, customer: Customer) -> None: | ||
print(f"Cinema bar sold {product} to {customer.name}.") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
from app.people.cinema_staff import Cleaner | ||
from app.people.customer import Customer | ||
|
||
|
||
class CinemaHall: | ||
|
||
def __init__(self, number: int) -> None: | ||
self.number = number | ||
|
||
def movie_session( | ||
self, movie_name: str, | ||
customers: list[Customer], | ||
cleaning_staff: Cleaner | ||
) -> None: | ||
print(f'"{movie_name}" started in hall number {self.number}.') | ||
for customer in customers: | ||
customer.watch_movie(movie_name) | ||
print(f'"{movie_name}" ended.') | ||
cleaning_staff.clean_hall(self.number) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,23 @@ | ||
# write your imports here | ||
from app.cinema.bar import CinemaBar | ||
from app.cinema.hall import CinemaHall | ||
from app.people.customer import Customer | ||
from app.people.cinema_staff import Cleaner | ||
|
||
|
||
def cinema_visit(customers: list, hall_number: int, cleaner: str, movie: str): | ||
# write you code here | ||
pass | ||
def cinema_visit( | ||
customers: list, | ||
hall_number: int, | ||
cleaner: str, | ||
movie: str) -> None: | ||
customer_list = [ | ||
Customer(customer["name"], | ||
customer["food"]) for customer in customers] | ||
|
||
cinema_hall = CinemaHall(hall_number) | ||
cinema_bar = CinemaBar() | ||
cleaner = Cleaner(cleaner) | ||
|
||
for customer in customer_list: | ||
cinema_bar.sell_product(customer.food, customer) | ||
|
||
cinema_hall.movie_session(movie, customer_list, cleaner) |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
class Cleaner: | ||
def __init__(self, name: str) -> None: | ||
self.name = name | ||
|
||
def clean_hall(self, | ||
hall_number: int) -> None: | ||
print(f"Cleaner {self.name} is cleaning hall number {hall_number}.") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
class Customer: | ||
def __init__(self, name: str, food: str) -> None: | ||
self.name = name | ||
self.food = food | ||
|
||
def watch_movie(self, movie: str) -> None: | ||
print(f'{self.name} is watching "{movie}".') |