2017-07-05 54 views
-2

我找不到爲什麼我使用os.system Python代碼返回1不知道爲什麼使用os.system代碼返回1

import os 
flist = getFileList("C:/Users/Owner/Desktop/TM/reports") 
a = flist[0].replace('.pdf', '.txt') 
os.system("pdf2txt.py -o a flist[0]") 
+2

[爲什麼'os.system'退出並返回代碼1?](https: //sackoverflow.com/questions/25807062/why-os-system-exits-with-return-code-1) – Skam

+0

@SeeDart錯誤的原因是不同的, –

回答

2

我認爲你的意思

import os 
flist = getFileList("C:/Users/Owner/Desktop/TM/reports") 
a = flist[0].replace('.pdf', '.txt') 
# 1. os.system("pdf2txt.py -o a flist[0]") 
# 2. os.system("pdf2txt.py -o a " + "flist[0]") 
os.system("pdf2txt.py -o " + a + " " + '"' + flist[0] + '"') 

的差異所有3個選項之間都非常微妙。在1,2 python執行該命令的字符串文字爲flist[0],另一個未註釋的選項,其值爲flist[0]

+1

甚至更​​多的,添加引號flist [0] – ddbug

+0

好主意@ddbug!編輯添加您的評論 – Skam

+1

不,我不打算打破工作代碼:))。只要引用文件名以防它包含空格。 '+'「'+ flist [0] +''''' – ddbug

相關問題