As @dim mentioned what's the typo in your code, you also need to be aware os.system is running in synchronous, which means scripts in your folder will be run in sequence instead of in asynchronous way.
To understand that, add file called hello_world.py:
import time time.sleep(2) print('hello world') if you run you script as follows, it will cost you 2s + 2s = 4s:
loop = asyncio.get_event_loop() loop.run_until_complete( asyncio.gather( *[run_script('hello_world.py') for _ in range(2)] ) ) So to solve this issue, you can use asyncio.subprocess module:
from asyncio import subprocess async def run_script(script): process = await subprocess.create_subprocess_shellcreate_subprocess_exec( 'python ' +'python', script ) try: out, err = await process.communicate() except Exception as err: print(err) Then it will cost you only 2 sec, because it is running asynchronously.