Python 通过右键单击';用'打开;windows中的上下文菜单,然后在其他程序中打开
我使用一个软件,当你关闭时,它会保存你当前的配置,但是,下次我通过点击一个与之相关的文件来打开该软件时,它会尝试通过相同的配置来运行该文件,这是我不想要的。因此,我创建了一个python脚本,首先打开该程序的应用程序数据,将配置重置为默认值,然后再次打开该程序 如果我只是尝试在没有文件的情况下加载程序,但我希望能够单击与该程序关联的文件(通常我可以双击该文件在程序中打开),然后使用windows中的“打开方式”功能选择我的脚本,然后在脚本清除最后一个配置后打开程序中的文件。 目前,如果我这样做,它会清除配置并打开程序,但不会加载任何文件 本质上,我问的是如何将文件传递给python,然后让python将该文件传递给第三方应用程序Python 通过右键单击';用'打开;windows中的上下文菜单,然后在其他程序中打开,python,windows,filepath,sys,python-os,Python,Windows,Filepath,Sys,Python Os,我使用一个软件,当你关闭时,它会保存你当前的配置,但是,下次我通过点击一个与之相关的文件来打开该软件时,它会尝试通过相同的配置来运行该文件,这是我不想要的。因此,我创建了一个python脚本,首先打开该程序的应用程序数据,将配置重置为默认值,然后再次打开该程序 如果我只是尝试在没有文件的情况下加载程序,但我希望能够单击与该程序关联的文件(通常我可以双击该文件在程序中打开),然后使用windows中的“打开方式”功能选择我的脚本,然后在脚本清除最后一个配置后打开程序中的文件。 目前,如果我这样做,
import sys
import subprocess
def main():
if len(sys.argv) == 1:
path = sys.argv[0]
subprocess.run(['/path/to/my.exe', path])
else:
print('Usage myscript.py <path>')
if __name__ == "__main__":
main()
我正在使用“os.startfile('link to.exe')函数打开程序,但是如何通过单击文件并用脚本打开它,将文件路径作为参数/字符串导入python
path = 'path/to/file/selected' # passed to python from selecting the file in windows explorer before starting script
# execute some code
os.startfile('path')
对于python,我是一个初学者,因此任何帮助都将不胜感激
在windows 10上使用python 3.6您可以使用
sys.argv
访问传递给脚本的命令行参数。只要您想将这些参数传递给某个第三方应用程序(可执行二进制文件),就应该使用子流程
模块作为os。startfile
用于启动一个文件及其相关应用程序
import sys
import subprocess
def main():
if len(sys.argv) == 1:
path = sys.argv[0]
subprocess.run(['/path/to/my.exe', path])
else:
print('Usage myscript.py <path>')
if __name__ == "__main__":
main()
导入系统
导入子流程
def main():
如果len(sys.argv)==1:
path=sys.argv[0]
subprocess.run(['/path/to/my.exe',path])
其他:
打印('Usage myscript.py')
如果名称=“\uuuuu main\uuuuuuuu”:
main()
如果我正确理解了您的问题,可以通过以下方式完成,具体取决于子流程模块:
subprocess.Popen(["/path/to/application", "/path/to/file/to/open"])
有关更多详细信息,请参阅