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

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
venv/
3 changes: 2 additions & 1 deletion level_1/a_user_instance.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,6 @@ def __init__(self, name: str, username: str, age: int, phone: str):


if __name__ == '__main__':
pass # код писать тут
new_user = User(name="Human", username="Towel", age=22, phone="+7(999)999-99-99")
print(f"Информация о пользователе:\nИмя - {new_user.name}.\nЛогин - {new_user.username}.\nВозраст - {new_user.age}.\nМобильный телефон - {new_user.phone}.")

5 changes: 3 additions & 2 deletions level_1/b_student_full_name_method.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ def get_full_name(self):


if __name__ == '__main__':
pass # код писать тут

student = Student(name='Mark', surname='Proskurin', faculty='Python Development', course=2)
get_full_student_name = student.get_full_name()
print(get_full_student_name)
9 changes: 7 additions & 2 deletions level_1/c_product_class.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,13 @@


class Product:
pass # код писать тут
def __init__(self, name: str, description: str, price: int, weight: int):
self.name = name
self.description = description
self.price = price
self.weight = weight


if __name__ == '__main__':
pass # код писать тут
product = Product(name='Chair', description='Very comfortable office chair', price='300$', weight=22)
print(f"Information about product:\nName - {product.name}.\nDescription - {product.description}.\nPrice - {product.price}.\nWeight - {product.weight} lb. ")
8 changes: 5 additions & 3 deletions level_1/d_bank_account_increase_balance.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,10 @@ def __init__(self, owner_full_name: str, balance: float):
self.balance = balance

def increase_balance(self, income: float):
pass # код писать тут

self.balance += income

if __name__ == '__main__':
pass # код писать тут
bank_account = BankAccount(owner_full_name='User Name', balance=1200.91)
print(f'Баланс счёта: {bank_account.balance}')
bank_account.increase_balance(259.22)
print(f'Ваш баланс после пополнения: {bank_account.balance}')
23 changes: 21 additions & 2 deletions level_1/e_bank_account_decrease_balance.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,27 @@


class BankAccount:
pass # код писать тут
def __init__(self, owner_full_name: str, balance: float):
self.owner_full_name = owner_full_name
self.balance = balance

def increase_balance(self, income: float):
self.balance += income

def decrease_balance(self, expense: float):
if self.balance - expense < 0:
raise ValueError('На вашем счёте недостаточно средств')
self.balance -= expense


if __name__ == '__main__':
pass # код писать тут
account = BankAccount('Name User', 1000.0)
account.decrease_balance(500)
print(f'Баланс после снятия средств: {account.balance}')

try:
account.decrease_balance(2000)
except ValueError as e:
print(f'Ошибка: {e}')

print(f'Баланс после неудачной попытки снятия средств: {account.balance}')
21 changes: 15 additions & 6 deletions level_2/a_user_from_functions_to_class.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,23 @@
1. Создайте класс User и перенесите всю логику работы с пользователем туда.
"""

class User:
def __init__(self, username: str, user_id: int, name: str):
self.username = username
self.user_id = user_id
self.name = name

def make_username_capitalized(username: str):
return username.capitalize()

def make_username_capitalized(self):
return self.username.capitalize()

def generate_short_user_description(username: str, user_id: int, name: str):
return f'User with id {user_id} has {username} username and {name} name'

def generate_short_user_description(self):
return f'User with id {self.user_id} has {self.username} username and {self.name} name'

class User:
pass # код писать тут

if __name__ == '__main__':
user = User(username='login', user_id=1, name='first_name')
user.username = user.make_username_capitalized()
description = user.generate_short_user_description()
print(description)
40 changes: 39 additions & 1 deletion level_2/b_user_should_be_banned.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,42 @@


class User:
pass # код писать тут
def __init__(self, first_name: str, last_name: str, age: int):
self.first_name = first_name
self.last_name = last_name
self.age = age

def should_be_banned(self) -> bool:
return self.last_name in SURNAMES_TO_BAN

if __name__ == '__main__':
user_1 = User(first_name='Jay', last_name='Vaughn', age=22)
user_2 = User(first_name='Bob', last_name='Wilhelm', age=30)
user_3 = User(first_name='Steave', last_name='Cubin',age=29)
user_4 = User(first_name='Alex', last_name='Santaros', age=25)

if user_1.should_be_banned():
print(f'{user_1.first_name} {user_1.last_name} should be banned')

else:
print(f'{user_1.first_name} {user_1.last_name} is allowed')

if user_2.should_be_banned():
print(f'{user_2.first_name} {user_2.last_name} should be banned')

else:
print(f'{user_2.first_name} {user_2.last_name} is allowed')

if user_3.should_be_banned():
print(f'{user_3.first_name} {user_3.last_name} should be banned')

else:
print(f'{user_3.first_name} {user_3.last_name} is allowed')

if user_4.should_be_banned():
print(f'{user_4.first_name} {user_4.last_name} should be banned')

else:
print(f'{user_4.first_name} {user_4.last_name} is allowed')