В Windows 8.1 ниже работали, в то время как другие заданные способы с subprocess.call
терпят неудачу с путём, в нем есть пробелы.
subprocess.call('cmd /c start "" "any file path with spaces"')
Используя этот и другие ответы раньше, вот встроенный код, который работает на нескольких платформах.
import sys, os, subprocess
subprocess.call(('cmd /c start "" "'+ filepath +'"') if os.name is 'nt' else ('open' if sys.platform.startswith('darwin') else 'xdg-open', filepath))
Что ж, это распространенная проблема, когда вы добавляете строку в другую локаль, отличную от файла strings.xml
по умолчанию, и забываете добавить ее в файл strings.xml
по умолчанию. Поэтому, когда вы находитесь в локали по умолчанию, приложение не сможет увидеть значение, потому что оно не внутри значения по умолчанию strings.xml