9

実行時にPythonで任意の種類のアプリケーションを開くことができるかどうか疑問に思っていましたか?

4

7 に答える 7

19

Windowsを使用していると仮定すると、次のようなコマンドのいずれかを使用します。

subprocess.call

import subprocess
subprocess.call('C:\\myprogram.exe')

os.startfile

import os
os.startfile('C:\\myprogram.exe')
于 2013-02-12T11:45:02.233 に答える
3

システムを使用すると、オープン機能を利用することもできます(特に、mac os /unix環境を使用している場合。権限の問題に直面している場合に役立ちます。

import os

path = "/Applications/Safari.app"
os.system(f"open {path}")
于 2020-03-27T02:04:19.757 に答える
1

http://docs.python.org/2/library/subprocess.html#using-the-subprocess-moduleを見てみてくださいsubprocess.call

于 2013-02-12T11:42:27.633 に答える
0

このコードを使用してください:-

 import subprocess
 subprocess.call('drive:\\programe.exe')
于 2013-04-01T10:32:59.467 に答える
0

これを試して :

import os
import subprocess

command  = r"C:\Users\Name\Desktop\file_name.exe"
os.system(command)
#subprocess.Popen(command)
于 2019-06-20T14:26:35.127 に答える
0

もちろんできます。インポートimport subprocessして呼び出すだけsubprocess.call('applicaitonName')です。

たとえば、UbuntuでVSCodeを開きたいとします。

import subprocess
cmd='code';
subprocess.call(cmd)

この行は、アプリケーションを開くためにも使用できます。たとえば、エラーをキャプチャしたいのでstderrを使用した場合など、より多くの情報が必要な場合に使用できます。

subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
于 2019-08-08T15:41:54.807 に答える
0

Windows、Linux、MacOSのいくつかの追加の例:

import subprocess

# Generic: open explicitly via executable path
subprocess.call(('/usr/bin/vim', '/etc/hosts'))
subprocess.call(('/System/Applications/TextEdit.app/Contents/MacOS/TextEdit', '/etc/hosts'))

# Linux: open with default app registered for file
subprocess.call(('xdg-open', '/tmp/myfile.html'))

# Windows: open with whatever app is registered for the given extension
subprocess.call(('start', '/tmp/myfile.html'))

# Mac: open with whatever app is registered for the given extension
subprocess.call(('open', '/tmp/myfile.html'))

# Mac: open via MacOS app name
subprocess.call(('open', '-a', 'TextEdit', '/etc/hosts'))

# Mac: open via MacOS app bundle name
subprocess.call(('open', '-b', 'com.apple.TextEdit', '/etc/hosts')) 

特にHTMLページまたはURLを開く必要がある場合は、webbrowserモジュールがあります。

import webbrowser

webbrowser.open('file:///tmp/myfile.html')

webbrowser.open('https://yahoo.com')

# force a specific browser
webbrowser.get('firefox').open_new_tab('file:///tmp/myfile.html')
于 2022-01-22T22:45:32.443 に答える