1 使用os.system()
os.system('notepad') #阻塞
os.system('start notepad')#非阻塞 windows 方式
2 使用subprocess
import os,subprocess
subprocess.run("notepad"))
注意使用1和2 方式打开的外部程序,会随着当前python程序的关闭也一起关闭
3 使用 os.execv 系列,os.exec*有一系列的函数
这种方式启动的外部程序不会随着python自身程序的关闭而关闭
https://docs.python.org/3/library/os.html#process-management
import os,sys,time
#启动外部程序
def start_program():
python = sys.executable
#os.execl(python, python, 'd:\\app.py')
os.execv(r'C:\WINDOWS\notepad.exe', ['', '2.txt']) #第一个参数不会使用所以这里写了''
#重启自己
def start_self_program():
pythonexe = sys.executable
os.execl(pythonexe , '', *sys.argv)