Skip to content

Commit 1753e8f

Browse files
#15 - Python
1 parent c3efc54 commit 1753e8f

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
### Async Python ###
2+
import asyncio
3+
import time
4+
5+
async def first_function(name: str, seconds: int):
6+
print(f'{name}, function started, run time will be {seconds}.')
7+
start = time.time()
8+
await asyncio.sleep(seconds)
9+
timelapse = time.time() - start
10+
print(f'execution time: {timelapse:.2f}s')
11+
12+
async def test():
13+
await first_function('my test function', 2)
14+
15+
asyncio.run(test())
16+
17+
#! Optional Challenge
18+
19+
async def function_a():
20+
start = time.time()
21+
await asyncio.sleep(1)
22+
timelapse = time.time() - start
23+
print(f'Function A execution time: {timelapse:.2f}s')
24+
25+
async def function_b():
26+
start = time.time()
27+
await asyncio.sleep(2)
28+
timelapse = time.time() - start
29+
print(f'Function B execution time: {timelapse:.2f}s')
30+
31+
async def function_c():
32+
start = time.time()
33+
await asyncio.sleep(3)
34+
timelapse = time.time() - start
35+
print(f'Function C execution time: {timelapse:.2f}s')
36+
37+
async def function_d():
38+
start = time.time()
39+
await asyncio.sleep(1)
40+
timelapse = time.time() - start
41+
print(f'Function D execution time: {timelapse:.2f}s')
42+
43+
async def main():
44+
await asyncio.gather(function_a(), function_b(), function_c())
45+
await function_d()
46+
47+
asyncio.run(main())

0 commit comments

Comments
 (0)