python子进程:FileNotFoundError

时间:2020-11-09 20:49:08

标签: python subprocess

我正在尝试运行第二个文件。我复制了视频中的所有内容,但仍然出现此错误。

from subprocess import call

class CallCourses(object):

    def __init__(self, path=r'file2.py'):
        self.path = path

    def call_module(self):
        call(["Python3", f"{self.path}"])


if __name__ == '__main__':
    c = CallCourses()
    c.call_module()

FileNotFoundError: [WinError 2] The system cannot find the file specified

我还尝试将路径设置为绝对路径,并将其放在原始字符串中:

r'C:\Users\User\PycharmProjects\MyProject\file.py'
````but I get the same error

2 个答案:

答案 0 :(得分:1)

首先,您可以将 python3 更改为 python py ,因为Windows中不是默认设置。 python3 在Linux中工作。

您可以尝试使用pathlib库获取正确的路径。

from pathlib import Path
current_path = Path.cwd()

current_path显示文件的路径,然后将 self.path 更改为此:

self.path = current_path / path

答案 1 :(得分:0)

[Info] Windows并非默认的“ Python3”。尝试使用:“ py”或“ python”

/!\请给我们所有TracBack错误/!\