我在Python中遇到逻辑和语法问题,无法打开程序和执行程序。
举个例子,我已经想出了如何用python代码打开一个程序:
import os
os.system("start c:/test/sqlite3 test.db3)
使用这个示例代码我打开一个sqlite3(我知道Python中有一个sqlite3库 - 我现在正试图理解操作系统。)
如何使用此打开的文件执行以下命令?
.read test.sql
如果您能简要向我解释一个逻辑,我将不胜感激。谢谢。
答案 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