0

Pythonスクリプトをファイルにバインドするにはどうすればよいですか?ファイルを開いたときにバックグラウンドで実行されますか?

ファイルを写真にバインドしてから、写真を閉じるか開くと、スクリプトが実行されます。

4

2 に答える 2

1

Windows (たとえば) では、ファイルの種類(特定の 1 つのファイルではなく、特定の拡張子を持つすべてのファイル) を 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 に答える