如何避免弹出cmd?

时间:2017-09-24 18:10:59

标签: python module

我正在编写一个必须调用其他程序的程序。所以我做了一些研究,发现了os模块。此解决方案的问题是cmd总是弹出。我怎么能避免这个?

到目前为止,我使用了这样的命令:os.system("something.py")

1 个答案:

答案 0 :(得分:1)

您正在寻找的内容可能在subprocess模块中找到。

现在没有关于something.py运行时你想要做什么的任何细节,所以假设我们有一个名为test.py的文件,它创建一个新文件并写一些东西:

<强> test.py

t = r"C:\Users\Paul\Desktop\test.txt"

with open(t, 'w') as f:
    f.write("This worked!")

因此,无论我们想要运行哪个程序test.py,我们都会有以下内容:

import subprocess
f = r"C:\Users\Paul\Desktop\test.py"
subprocess.run(f, shell=True) # shell=True since this is really an arg

程序将在不打开终端的情况下执行。见这里:

>>> import subprocess
>>> f = r"C:\Users\Paul\Desktop\test.py"
>>> subprocess.run(f, shell=True)
CompletedProcess(args='C:\\Users\\Paul\\Desktop\\test.py', returncode=0)