2013-04-02 124 views
0

我的項目歐拉安裝程序是我從兩臺不同的計算機(一臺是Mac,另一臺是Windows 7)上開發的PyDev項目。該項目的文件結構如下所示:如何讀取在PyDev環境變量中指定的文件

PROJECT_LOC/ 
    unsolved/ 
    The .py files for the problems I haven't solved 
    solved/ 
    Problems_001_025/ 
     .py files for problems 1-25 
    ... etc ... 
    texts/ 
    Any input files provided by Project Euler (e.g., Problem 22) 

每個文件在模式Problem###.pyProblem###.txt命名。

一旦我解決一個問題,我將它從unsolvedsolved正確的目錄,這就是我的困難來自於:

考慮到與輸入一個問題,說Problem022.py

for line in open("../texts/Problem022.txt"): 
    # read file in 
# code to solve the problem 

自從我解決問題22後,我將其從PROJECT_LOC/unsolved/移至PROJECT_LOC/solved/Problems_001_025/。現在,(不奇怪)當我嘗試再次運行它時,它給了我一個沒有這樣的文件錯誤。

因此,沒有改變我的文件結構,有沒有辦法讓我從任何地方訪問項目目錄中的輸入文本文件?

我想我可以做這樣的事情open(${PROJECT_LOC}/texts),但我不知道如何從Eclipse中獲得PROJECT_LOC在運行時,並將它在Windows和OS X.我what this person did in his question打過工,但不能讓它爲我工作。

回答

1

我想通了......

我增加了一個環境變量來解釋,在我的Eclipse首選項的值${PROJECT_LOC:texts}/。我現在可以使用os.environ["PROJECT_EULER_TEXT_FILES"]來拉取輸入的位置。

相關問題