diff --git a/Week01/info_alisher_shalenov.py b/Week01/info_alisher_shalenov.py new file mode 100644 index 00000000..f8f22615 --- /dev/null +++ b/Week01/info_alisher_shalenov.py @@ -0,0 +1,2 @@ +student_id = "220316077" +full_name = "Alisher Shalenov" diff --git a/Week02/types_alisher_shalenov.py b/Week02/types_alisher_shalenov.py new file mode 100644 index 00000000..3562276d --- /dev/null +++ b/Week02/types_alisher_shalenov.py @@ -0,0 +1,4 @@ +my_int = 10 +my_float = 3.14 +my_bool = True +my_complex = 2 + 5j diff --git a/Week03/pyramid_alisher_shalenov.py b/Week03/pyramid_alisher_shalenov.py new file mode 100644 index 00000000..0b8612b8 --- /dev/null +++ b/Week03/pyramid_alisher_shalenov.py @@ -0,0 +1,10 @@ +def calculate_pyramid_height(blocks): # asd + height = 0 + layer = 1 + + while blocks >= layer: + blocks -= layer + height += 1 + layer += 1 + + return height diff --git a/Week04/decorators_alisher_shalenov.py b/Week04/decorators_alisher_shalenov.py new file mode 100644 index 00000000..af105b1f --- /dev/null +++ b/Week04/decorators_alisher_shalenov.py @@ -0,0 +1,27 @@ +import time +import tracemalloc + +def performance(fn): + if not hasattr(performance, "counter"): + performance.counter = 0 + performance.total_time = 0 + performance.total_mem = 0 + + def wrapper(*args, **kwargs): + performance.counter += 1 + + tracemalloc.start() + start_time = time.time() + + result = fn(*args, **kwargs) + + end_time = time.time() + current, peak = tracemalloc.get_traced_memory() + tracemalloc.stop() + + performance.total_time += (end_time - start_time) + performance.total_mem += peak + + return result + + return wrapper diff --git a/Week05/awaitme_alisher_shalenov.py b/Week05/awaitme_alisher_shalenov.py new file mode 100644 index 00000000..40a753ac --- /dev/null +++ b/Week05/awaitme_alisher_shalenov.py @@ -0,0 +1,12 @@ +import asyncio + +def awaitme(fn): + async def wrapper(*args, **kwargs): + res = fn(*args, **kwargs) + + if asyncio.iscoroutine(res): + res = await res + + return res + + return wrapper