我想从python中调用命令行,例如来自python内部的命令,例如:
import os
os.system("git log")
我希望将此命令的输出作为字符串列表获取并在python中对其进行操作。我目前这样做的方式是,例如:
import os
os.system("git log > gitlog.txt")
text_file = open("gitlog.txt", "r")
lines = text_file.readlines()
我怀疑有更好的方法。我是对的,如果是的话,它是什么?
感谢
答案 0 :(得分:3)
是的,使用subprocess
模块:
from subprocess import PIPE, Popen
proc = Popen(['git', 'log'], stdout=PIPE)
lines = proc.stdout.readlines()