Python:Рецепты/Открытие файлов программами по умолчанию: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Myagkij (обсуждение | вклад) |
||
Строка 15: | Строка 15: | ||
Для [[Windows]]: | Для [[Windows]]: | ||
<syntaxhighlight lang="python | <syntaxhighlight lang="python" enclose="div"> | ||
import subprocess | import subprocess | ||
subprocess.Popen(['start', 'ПУТЬКФАЙЛУ'], shell=True) | subprocess.Popen(['start', 'ПУТЬКФАЙЛУ'], shell=True) | ||
Строка 22: | Строка 22: | ||
Для [[Ubuntu Linux]]: | Для [[Ubuntu Linux]]: | ||
<syntaxhighlight lang="python | <syntaxhighlight lang="python" enclose="div"> | ||
import subprocess | import subprocess | ||
subprocess.Popen(['see', 'ПУТЬКФАЙЛУ']) | subprocess.Popen(['see', 'ПУТЬКФАЙЛУ']) | ||
Строка 29: | Строка 29: | ||
Для [[OS X]]: | Для [[OS X]]: | ||
<syntaxhighlight lang="python | <syntaxhighlight lang="python" enclose="div"> | ||
import subprocess | import subprocess | ||
subprocess.Popen(['open', 'ПУТЬКФАЙЛУ']) | subprocess.Popen(['open', 'ПУТЬКФАЙЛУ']) |
Версия от 23:03, 13 января 2020
Проверка/Оформление/Редактирование: Мякишев Е.А.
Открытие файлов программами по умолчанию
Задача
Открыть файл программой, ассоциированной с данным расширением.
Решение
Используйте модуль subprocess и вывоз функции Popen().
Для Windows:
import subprocess
subprocess.Popen(['start', 'ПУТЬКФАЙЛУ'], shell=True)
Для Ubuntu Linux:
import subprocess
subprocess.Popen(['see', 'ПУТЬКФАЙЛУ'])
Для OS X:
import subprocess
subprocess.Popen(['open', 'ПУТЬКФАЙЛУ'])
Пример
Пример №1
Создадим текстовый файл и откроем его программой по умолчанию.
для Windows
import subprocess
fileObj = open('hello.txt', 'w')
fileObj.write('Hello world!')
fileObj.close()
subprocess.Popen(['start', 'hello.txt'], shell=True)
для Ubuntu Linux
import subprocess
fileObj = open('hello.txt', 'w')
fileObj.write('Hello world!')
fileObj.close()
subprocess.Popen(['see', 'hello.txt'])
для OS X
import subprocess
fileObj = open('hello.txt', 'w')
fileObj.write('Hello world!')
fileObj.close()
subprocess.Popen(['open', 'hello.txt'])