双击文件以运行python脚本。如何将该文件作为输入?

时间:2012-03-26 21:27:17

标签: python macos file input operating-system

我希望能够创建一个程序,可以在最后使用我自己的扩展名保存文本文件。之后用户应该能够双击该文件来运行程序并打开该文件。

我需要知道如何在用户双击它时将python程序作为文件打开的默认程序,以及如何在程序开始运行时获取该文件。

python 2.7 mac os x 10.6和windows 7

编辑: 比如说,我正在制作一个油漆程序。用户想要保存他正在处理的文件。我的程序将它保存为untitled.paint,稍后用户双击untitled.paint并希望我的程序打开该文件。

有没有办法告诉操作系统用我的绘图程序打开以.paint结尾的所有文件。

我无法将其另存为.jpg,因为这不会保存图层或其他任何内容。

1 个答案:

答案 0 :(得分:1)

不了解OSX,但在Windows中你可以这样做:

  1. 创建批处理文件
  2. 选择要“自动”打开的类型的文件,并使用上下文菜单中的“打开方式...”选择批处理文件作为要使用的默认程序。
  3. 批处理文件将获得传递参数1的“clicked”文件,然后您可以将其作为参数传递给Python脚本 - 然后将其作为sys.argv [1]接收。
  4. 使用扩展名“.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]