0

如何将 python 脚本绑定到文件,并在打开文件时在后台运行?

假设我想将文件绑定到照片然后关闭照片或打开脚本运行

4

2 回答 2

1

在 Windows 中(例如),您可以将文件类型(不是一个特定文件,而是具有特定扩展名的所有文件)与 python 脚本相关联,然后启动照片查看器(使用文件名作为参数,以便应用程序打开此文件)来自 python 脚本。这样,您的脚本和“主”应用程序都将在打开文件类型时运行。

顺便说一句:在您的脚本中,您可以测试某些模式或子字符串的文件名,以对该文件类型的不同文件执行不同的操作...

此解决方案可能不像您希望的那样顺利,但它可能可以作为“解决方法”。

于 2013-03-11T18:23:29.590 回答
0

检查这个问题(而不是它的答案)和这个答案,
如果你不想做这么多的阅读(尽管你应该),

您可能需要使用:

  • os.startfile()在 Windows 上
  • subprocess.call(['open',..])在 Mac 上
  • subprocess.call(['xdg-open', ...])在 *nix 上

这会是这样的:

import platform, os, subprocess

#....

def nix_open(filename):
    pass               # I don't know this one, you can research
def win_open(filename):
    return os.startfile(filename)
def mac_open(filename):
    return subprocess.call(['open',filename])

def handle_open(filename):
    s_name = platform.system()
    if s_name in ('Linux','Unix'):
        return nix_open(filename)
    elif s_name == 'Windows':
        return win_open(filename)
    elif s_name == 'Darwin':
        return mac_open(filename)
    # ...
    else:
        raise EnvironmentError, 'OS not supported'
于 2013-03-11T19:05:28.243 回答