在Python中打开程序和执行命令

时间:2016-06-04 13:06:35

标签: python python-3.x

我在Python中遇到逻辑和语法问题,无法打开程序和执行程序。

举个例子,我已经想出了如何用python代码打开一个程序:

import os 
os.system("start c:/test/sqlite3 test.db3)

使用这个示例代码我打开一个sqlite3(我知道Python中有一个sqlite3库 - 我现在正试图理解操作系统。)

如何使用此打开的文件执行以下命令?

.read test.sql

如果您能简要向我解释一个逻辑,我将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:1)

首先,不再推荐os.system。请改用subprocess模块。

使用subprocess打开程序:

import subprocess

p = subprocess.Popen(['command', 'arguments'])

使用Popen,您还可以使用PIPE通过stdin与流程进行通信。 E.g:

p = subprocess.Popen(['command', 'args'], stdin=subprocess.PIPE)

result = p.communicate(b"Any input that goes to stdin")

# do whatever you want to do with the result

有关Popensubprocess modulecommunicate的文档。