首页 > 解决方案 > 为什么我收到错误“系统找不到指定的路径”。在子进程 python

问题描述

import subprocess
import os
....
....
opn=open(ak,'w')
tt=txt.get(1.0,END)
opn.write(tt)
lst=[]
for i in range(0,len(ak)):
    if ak[i]=='/':
        lst.append(i)
    else:
        pass
val=lst[-1]+1
path=ak
file_name=path[val:]
sudo_path_name=path[3:val-1]
dir_name=path[:2]
path_name="cd "
for i in sudo_path_name:
    if i=='/':
        path_name+='\\'
    else:
        path_name+=i
command=dir_name+'&&'+path_name+'&&'+file_name
os.system(command)
output = subprocess.getoutput(command)
print(output)

ak 是文件的路径我的目标是在执行 ak 时打印输出。但是每当我尝试执行它时,输出为

The system cannot find the path specified.
The system cannot find the path specified.

当我得到命令并使用命令提示符运行时,它成功执行,没有错误.. 谢谢

标签: pythonsubprocesscommand-promptos.system

解决方案


这取决于编辑器。它也发生在我身上,我使用了 VS-code,但是当我更改 cwd 时它起作用了!所以可能就是这个问题。
还可以尝试放置完整路径或尝试以下代码:-

from pathlib import Path
import os
os.chdir(Path(__file__).parent)

推荐阅读