91 lines
1.8 KiB
Python
91 lines
1.8 KiB
Python
import datetime
|
|
|
|
|
|
def myFirstDecorator(fn):
|
|
def wrapper(*args):
|
|
start = datetime.datetime.now()
|
|
#что-то делаем
|
|
res = fn(*args) #вызываем функцию которую передали
|
|
end = datetime.datetime.now()
|
|
print(f"время выполнения функции: { end - start }")
|
|
# что-то делаем
|
|
return res - 1
|
|
return wrapper
|
|
|
|
|
|
# @myFirstDecorator
|
|
# def pow_(x, y):
|
|
# return x ** y
|
|
#
|
|
# @myFirstDecorator
|
|
# def summ(x, y):
|
|
# return x + y
|
|
|
|
|
|
class A:
|
|
@staticmethod
|
|
def summ(self, x, y):
|
|
print(self)
|
|
self.summ(self, y, )
|
|
return x + y
|
|
|
|
def summ_(self, x, y):
|
|
return x + y
|
|
|
|
|
|
# obj = A()
|
|
# print(obj.summ(obj,2,3))
|
|
|
|
|
|
# print(pow_(3,3))
|
|
# print(summ(3,4))
|
|
# fn = myFirstDecorator(pow)
|
|
# result = fn(2,2)
|
|
# print(result)
|
|
|
|
|
|
class Db:
|
|
instance = None
|
|
def __init__(self, age):
|
|
self.age = age
|
|
if Db.instance == None:
|
|
return
|
|
else:
|
|
raise Exception()
|
|
@staticmethod
|
|
def getInstance(age):
|
|
if Db.instance == None:
|
|
Db.instance = Db(age)
|
|
|
|
return Db.instance
|
|
# try:
|
|
obj = Db.getInstance(10)
|
|
obj2 = Db.getInstance(16)
|
|
|
|
# print(obj.age)
|
|
# print(obj2.age)
|
|
# except Exception as e:
|
|
# print(e)
|
|
from abc import ABC, abstractmethod
|
|
|
|
class Absclass(ABC):
|
|
def print(self,x):
|
|
print("Passed value: ", x)
|
|
@abstractmethod
|
|
def task(self):
|
|
print("We are inside Absclass task")
|
|
|
|
@abstractmethod
|
|
def task_(self):
|
|
print("We are inside Absclass task")
|
|
|
|
class test_class(Absclass):
|
|
pass
|
|
def task(self):
|
|
print("We are inside test_class task")
|
|
def task_(self):
|
|
print("We are inside Absclass task")
|
|
|
|
test_obj = test_class()
|
|
test_obj.task()
|
|
test_obj.print("10") |