2017-02-09 137 views
0

我有我的Python代碼運行C++代碼,它將另一個文件夾中的文件作爲輸入。 我有我的文件夾中的代碼,輸入文件夾B中,我一直在嘗試這樣的:對另一個文件夾中的文件執行.exe文件

path = 'C:/pathToInputFiles' 
dirs = os.listdir(path) 

for path in dirs: 
    proc = subprocess.Popen([fullPathtoCppCode, inputFiles]) 

不過,我不斷收到WindowsError: [Error 2] The system cannot find the file specified

它的工作的唯一辦法是,當我將C++可執行文件放在輸入文件的相同文件夾中,這是我所避免的。

如何讓python正確讀取文件路徑?

+0

如果你''進口os''然後''os.path.exists(fullPathtoCppCode)' ',你會得到什麼? – alexblae

+0

@alexblae我試了一下,什麼都沒有! 如果一切工作正常,我應該得到什麼? – philippos

+0

如果文件存在,則通常應該爲''True'',否則爲'False'。所以它看起來像你指定的路徑到文件,它並不存在。但我想@NineTail的答案解決了這個問題。 – alexblae

回答

1

嘗試在for語句後使用os.path.join。

路徑= os.path.join(目錄,文件名)

例如

def test(directory): 
    for filename in os.listdir(directory): 
     filename = os.path.join(directory, filename) 
     proc = subprocess.Popen([fullPathtoCppcode, inputFiles]) 
相關問題