打开子进程python时出错

时间:2012-11-11 12:51:52

标签: linux python-2.7

尝试打开txt时出现此错误。文件。请告诉我们如何解决它。

code: subprocess.Popen("/home/yash/Documents/ct.txt")
      time.sleep(1)
error: 
     Traceback (most recent call last):
     File "/home/yash/Documents/final_downloader22.py", line 5, in <module>
     subprocess.Popen("/home/yash/Documents/ct.txt")
     File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
     errread, errwrite)
     File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
     raise child_exception
     OSError: [Errno 13] Permission denied

2 个答案:

答案 0 :(得分:1)

文本文件通常不可执行。这里的“开放”是什么意思?

  1. 这可能意味着“打开它以便我可以在程序中使用它。”

    这适用于file_object = open('/home/yash/Documents/ct.txt', 'r'),然后使用file_object

  2. 这也可能意味着“让文件类型的关联应用程序打开文件,以便用户可以编辑它”。

    在这种情况下,您必须找出相关应用程序是什么。如何执行此操作取决于您使用的操作系统以及窗口管理器/桌面环境。用一些简短的句子就无法回答。

答案 1 :(得分:1)

您可以使用webbrowser module在脚本中以便携方式打开文本文件进行编辑:

import webbrowser

webbrowser.open("/home/yash/Documents/ct.txt")

从命令行:

$ python -mwebbrowser "/home/yash/Documents/ct.txt"

另请参阅"Add shutil.open" Python issue的补丁。