2017-05-24 121 views
0

我經常使用終端運行程序,因爲這樣會使速度提高3倍。我最近從2016版的Pycharm升級到2017版,現在我無法再運行程序在終端。終端不喜歡的行是:程序在Pycharm中運行,但不在終端中

wb4 = load_workbook('../temp_proof.xlsx') 

再次,這條線與Pycharm正常工作。我去了終端,並確保它在正確的目錄中,當我按ls時,該文件在目錄中。

Here is the terminal error message: 
File "/Users/bobsmith/PycharmProjects/inference_engine2/inference2/Proofs/prove.py", line 36, in <module> 
    wb4 = load_workbook('../temp_proof.xlsx') 

    File "/Library/Python/2.7/site-packages/openpyxl/reader/excel.py", line 151, in load_workbook 
    archive = _validate_archive(filename) 

    File "/Library/Python/2.7/site-packages/openpyxl/reader/excel.py", line 115, in _validate_archive 
    archive = ZipFile(filename, 'r', ZIP_DEFLATED) 

    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 756, in __init__ 
    self.fp = open(file, modeDict[mode]) 
IOError: [Errno 2] No such file or directory: '../temp_proof.xlsx' 
+0

很明顯,在Pycharm和console中使用的環境設置是不同的;再次檢查,如果它是在pycharm方檢查項目環境之前工作 - 可能會注意到一些異常情況。從2016年升級到2017年時,我也遇到了問題 - 他們在更新過程中存在一些錯誤;一個更多的解決方案 - 有下一個2017年升級 - 安裝,如果你仍然有2016年活着使用。 – Drako

+1

問題出在你運行python文件的地方,試着將完整路徑傳給python程序裏面的文件,或者把文件保存在python文件所在的目錄下,然後調用程序 – Exprator

+0

Drako ,我不知道你的意思。終端不應該使用Pycharm所做的所有設置? Exprator,我試過你的解決方案,但它不起作用,但感謝你的幫助。 – bobsmith76

回答

0

對於一些原因,我不得不把斜線在用戶面前,像這樣:

wb4 = load_workbook('/Users/bobsmith/PycharmProjects/inference_engine2/inference2/temp_proof.xlsx') 

我想我之前嘗試過,但是這一次它的工作。也可能是這種情況,我不得不重新配置我的Pycharm工作目錄。所以我不確定真正的原因是什麼。

0

它似乎從temp_proof.xlsx文件位置獲得abs路徑。 做低於這個步驟

  1. 轉到文件夾路徑從該位置temp_proof.xlsx
  2. 開Python解釋器,並找到ABS位置路徑,即蟒蛇 進口OS LOCPATH = os.getcwd()
  3. 使用LOCPATH值來訪問temp_proof.xlsx文件 即文件路徑= os.path.join(locapth, 'temp_proof.xlsx')
  4. 文件路徑,你可以使用 WB4 = load_workbook(文件路徑)

這將工作

相關問題