我希望能够创建一个程序,该程序可以以我自己的扩展名结尾保存文本文件。之后,用户应该能够双击该文件以运行程序并打开该文件。
我需要知道如何使python程序成为用户双击时打开的默认程序,以及如何在程序开始运行时获取该文件。
python 2.7
Mac OS X 10.6和Windows 7
编辑:
举例来说,我正在制作一个绘画程序。用户想要保存他正在处理的文件。我的程序会将其保存为untitled.paint,稍后用户双击untitled.paint并期望我的程序打开该文件。
有没有办法让我告诉我的操作系统使用我的绘画程序打开所有以.paint结尾的文件。
我无法将其另存为.jpg,因为那样将无法保存图层或其他任何内容。
最佳答案
不了解OSX,但是在Windows中,您可以按照以下步骤进行操作:
创建一个批处理文件
选择要“自动”打开的类型的文件,然后在上下文菜单中使用“打开方式为...”将批处理文件选择为要使用的默认程序。
批处理文件将获取传递给参数1的“单击”文件,然后您可以将其作为参数传递给Python脚本-然后它将其作为sys.argv [1]接收。
使用扩展名“ .paint
”的示例(使用假设的python脚本pypaint.py
打开)可能会澄清一些问题:
run_paint.bat:
@echo off
echo 'clicked file is' %1
python path_to_pypaint.py %1
py_paint.py:
import sys
print 'opening', sys.argv[1]
关于python - 双击一个文件以运行python脚本。如何获得该文件作为输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9880130/