Python subprocess multi-line Python script
Python subprocess can run inline multi-line Python code. This is useful to use Python as a cross-platform demonstration or for production code where a new Python instance is called.
import subprocess
import sys
# the -u is to ensure unbuffered output so that program prints live
cmd = [sys.executable, "-u", "-c", r"""
import sys
import datetime
import time
for _ in range(5):
print(datetime.datetime.now())
time.sleep(0.3)
"""]
subprocess.check_call(cmd)