如何在前一行仍在运行的情况下跳转到python代码的另一行
我正在尝试创建一个python脚本来自动运行所有Django命令, 但是脚本执行会在os.system('python manage.py runserver')处停止,并且不会运行下一行,因为os.system('python manage.py runserver')需要继续运行。当如何在前一行仍在运行的情况下跳转到python代码的另一行,python,django,command-line,autorun,Python,Django,Command Line,Autorun,我正在尝试创建一个python脚本来自动运行所有Django命令, 但是脚本执行会在os.system('python manage.py runserver')处停止,并且不会运行下一行,因为os.system('python manage.py runserver')需要继续运行。当os.system('python manage.py runserver')仍在运行时,如何运行下一行代码 我尝试使用python睡眠方法等待几秒钟,然后运行下一行,但没有成功 这是我的密码: import o
os.system('python manage.py runserver')
仍在运行时,如何运行下一行代码
我尝试使用python睡眠方法等待几秒钟,然后运行下一行,但没有成功
这是我的密码:
import os, webbrowser, time
os.system('pipenv shell')
os.system('python manage.py runserver')
time.sleep(5)
webbrowser.open('http://127.0.0.1:8000', new=1, autoraise=True)
执行在
os.system('python manage.py runserver')
处停止,但我希望它运行webbrowser.open('http://127.0.0.1:8000“,new=1,autoraise=True)
而操作系统('python manage.py runserver')仍在运行。您需要使用子流程
from subprocess import call
call('python manage.py runserver',shell=True,cwd="/my/code/dir/") # your code directory
webbrowser.open('http://127.0.0.1:8000', new=1, autoraise=True)
较旧的模块
os.system,os.spawn*
将被具有更多功能的较新模块子流程
所取代,建议使用这些模块代替较旧的模块
使用os.spawnl(os.p_NOWAIT,'python manage.py runserver')
返回新进程的PID而不等待返回代码
subprocess.Popen()。有关更多信息,请按照@arryph推荐的方法执行。subprocess.Popen()为我工作。我怀疑os.system('pipenv shell')
在这里是否有用-在运行下一个命令之前,shell将关闭。谢谢,刚刚注意到这一点。如何保持shell打开?请使用pipenv run python manage.py runserver
。谢谢,请尽量避免回答“这对我也有用”这样的问题。