subprocess.Popen

时间:2018-04-27 12:35:17

标签: python python-3.x subprocess

Ifollow此链接以检查如何打开excel文件(以类似于双重文件的方式打开)。 How to open an Excel file with Python to display its content?

wnnmaw的答案很有效但后来我试图通过使用Stephan的答案来改进它,因为即使wnnmaw说Stephan的方式只是一个文件的方式。 Hower出于某些原因,对我来说,with部分不处理工作簿的关闭。我的程序在结束时继续,但文件仍然打开。这是代码的最基本版本,但即使这样也行不通。

with subprocess.Popen(["start", "/WAIT", retFle], shell=True) as doc:
    #doc.poll()
    bbg_df.to_excel(retFle, sheet_name ='Feuil1', )

sys.exit()

谢谢你的帮助。我实际上必须以这种方式使用excel,因为我正在输入一些将激活excel的forulas,这将会提取一些数据。所以我在等待这些数据,检索它们然后我想关闭工作簿。

编辑:

感谢@ Aran-Fey评论我到了这里,但它还没有做到这一点。

doc = subprocess.Popen(["start", "/WAIT", retFle], shell = True) 
bbg_df.to_excel(retFle, sheet_name ='Feuil1', )
time.sleep(10)
for x in psutil.Process(doc.pid).children(recursive = True):
    x.kill()
psutil.Process(doc.pid).kill()

0 个答案:

没有答案