pythonopen指定路径_从python中的特定程序打开文件

1586010002-jmsa.png

I would like to do a very simple thing but I am quite lost.

I am using a program called Blender and I want to write a script in python which open a .blend file but using the blender.app which is located in the same folder with the blend file, not with the blender.app which is located in Applications. (using Macosx)

So I was thinking that this should do the job...but instead it opens blender twice...

import os

path = os.getcwd()

print(path)

os.system("cd path/")

os.system("open blender.app Import_mhx.blend")

I also tried this one

import os

path = os.getcwd()

print(path)

os.system("cd path/")

os.system("open Import_mhx.blend")

but unfortunately it opens the .blend file with the default blender.app which is located in Applications...

any idea?

解决方案

This cannot work since the system command gets executed in a subshell, and the chdir is only valid for that subshell. Replace the command by

os.system("open -a path/blender.app Import_mhx.blend")

or (much better)

subprocess.check_call(["open", "-a", os.path.join(path, "blender.app"),

"Import_mhx.blend"])

你可能感兴趣的:(pythonopen指定路径)