子进程:权限和没有此类文件或目录错误消息
Subprocess: Permission and No such file or directory error messages
我在 Mac 运行 OS 10.15.4 上使用 Python 3.7 with Idle 并且正在尝试学习子流程的基础知识,但收效甚微尽管付出了很多努力。
import subprocess
subprocess.Popen('/Applications/Safari.app')
这会导致以
结尾的冗长错误消息
PermissionError: [Errno 13] Permission denied: '/Applications/Safari.app'
删除第一个反斜杠并改为使用
subprocess.Popen('Applications/Safari.app')
结果
FileNotFoundError: [Errno 2] No such file or directory: 'Applications/Safari.app': 'Applications/Safari.app'
当我用我更感兴趣的 TextEdit 替换 Safari 时,无论我是否包含反斜杠,我都会收到这些错误消息中的第二条。
使用可执行文件的完整路径:
subprocess.Popen('/Applications/Safari.app/Contents/MacOS/Safari')
<subprocess.Popen object at 0x1023414f0>
或者还有 webbrowser
模块:
>>> import webbrowser
>>> s = webbrowser.get('safari')
>>> s.open('https://google.com')
我在 Mac 运行 OS 10.15.4 上使用 Python 3.7 with Idle 并且正在尝试学习子流程的基础知识,但收效甚微尽管付出了很多努力。
import subprocess
subprocess.Popen('/Applications/Safari.app')
这会导致以
结尾的冗长错误消息PermissionError: [Errno 13] Permission denied: '/Applications/Safari.app'
删除第一个反斜杠并改为使用
subprocess.Popen('Applications/Safari.app')
结果
FileNotFoundError: [Errno 2] No such file or directory: 'Applications/Safari.app': 'Applications/Safari.app'
当我用我更感兴趣的 TextEdit 替换 Safari 时,无论我是否包含反斜杠,我都会收到这些错误消息中的第二条。
使用可执行文件的完整路径:
subprocess.Popen('/Applications/Safari.app/Contents/MacOS/Safari')
<subprocess.Popen object at 0x1023414f0>
或者还有 webbrowser
模块:
>>> import webbrowser
>>> s = webbrowser.get('safari')
>>> s.open('https://google.com')