title: Python async function is never awaited
body: <p>I implemented a async function in python's asynchronous framework <em>FastAPI</em></p>
  <p>The function looks like:</p>
  <pre><code>async def func2(num):
    time.sleep(3)
    return num
  
  async def func1():
    text = await func2(5)
    print(text)
    print('inside func1')
  
  async def my_async_func():
    print('start')
    await func1()
    print('finish')
    
  </code></pre>
  <p>Here, when I execute <code>my_async_func</code> I'm expecting asyn behavior and values to be printed as</p>
  <pre><code>start
  finish
  inside func1
  5
  </code></pre>
  <p>But it prints synchronously as</p>
  <pre><code>start
  5
  inside func1
  finish
  </code></pre>
  <p>How to handle concurrent operation and implementation of coroutines asynchronously?</p>