首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试在python中打开带有子进程模块的VSCode

尝试在python中打开带有子进程模块的VSCode
EN

Stack Overflow用户
提问于 2018-03-12 18:39:28
回答 1查看 1.2K关注 0票数 1

当我运行打开VSCode的命令"vsc“时,CMD会写这个

这是我用来打开VSCode的函数

代码语言:javascript
复制
def openVSC():
    subprocess.call(["C:\\Program Files\\Microsoft VS Code\\Code.exe"])

这是调用函数"openVSC()“的代码

代码语言:javascript
复制
while True:

    command_input = input(prompt).lower()


    if command_input == "open spotify":
        print("Opening Spotify...")
        openSpotify()
        print()

    elif command_input == "www":
        print("Opening Google Chrome...")
        openChrome()
        print()

    elif command_input == "vsc":
        print("Opening VSCode...")
        openVSC()
        print()


    elif command_input == "quit":
        break

    else:
        pass

另外,当我关闭cmd VSCode也关闭时,我认为CMD是独立运行VSCode的.似乎什么都没起作用,我什么都试过了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-12 18:47:23

您的问题很含糊,希望您提供更多的信息。假设您只从vscode调用获得STDOUT,那是因为您使用的是call(),它在返回程序控制之前等待进程完成。使用类似的方法进行调用,您可以设置STDOUT指向的位置,以便在使用脚本调用的程序时读取输出。

代码语言:javascript
复制
from subprocess import Popen, STDOUT
import os

Popen(['vscode'], stdout=os.open(os.devnull, os.O_RDWR), stderr=STDOUT)

这将打开作为子进程运行的进程,您的程序将在此时等待子进程终止。阅读更多的子流程,这一切都应该更有意义。希望这能帮上忙!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49242336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档