2012-05-11 35 views
0

。我爲這個簡單的問題表示歉意,但我是一個完全新手,需要一些幫助。我試圖運行彼得·諾維格的拼寫校正(http://norvig.com/spell.py),但我收到了如下答覆:如何在嵌入式文本文件的命令行中運行Python腳本?那裏有

C:\>spelling.py 
Traceback (most recent call last): 
    File "C:\Python27\spelling.py", line 11, in <module> 
    NWORDS = train(words(file('big.txt').read())) 
IOError: [Errno 2] No such file or directory: 'big.txt' 

腳本包括一個嵌入式文本文件(big.txt ),我已經創建並保存在與spelling.py相同的目錄中。爲什麼找不到big.txt文件?其次,一旦腳本正在運行,我將如何使用它來對付需要更正的單詞樣本?

回答

3

腳本的工作目錄是當前文件夾,而不是腳本的文件夾。

您可以將下面的代碼添加到您的腳本來改變這一點:

path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'big.txt') 
NWORDS = train(words(file(path).read())) 

import os 
os.chdir(os.path.dirname(os.path.abspath(__file__))) 

當然你也可以只打開文件時,而不是改變工作目錄使用此文件夾

相關問題