2017-12-06 7 views
1

私はPythonの初心者です。私はかなりわかりにくい、比較的まっすぐな答えが必要だと感じている問題に遭遇しています。Python:ディレクトリ内の1レベル上のファイルを参照する最も良い方法は?

教師が私たちのGitHubフォルダにすべてのコードを1つのフォルダに、そしてすべての画像を別のフォルダに入れることが必要なので、この方法で割り当てを行う必要があります。

Pythonファイルを実行しているときに私がCodeフォルダに入るので、Image Folderを参照できる方法はありますか?ローカルでは、私は完全なパスを入れることができますが、これはGitHubのコマンドラインから実行されるため、そのフォルダを参照するためにどのようなフルパスが見えているのか分かりませんでした。

+ Main GitHub Directory 
    + Code Folder 
     -My Python File 
    + Image Folder 
     -Images I want to use 

これは私がやりたいもののちょうどサンプルプログラムである:それは同じであるときに「WeatherIcons」はCode Folderのサブフォルダではなく、場合

from PIL import Image 
image = Image.open('WeatherIcons/Code32.PNG') 
image.show() 

これは動作しますレベル。これを回避するためのあらゆる創造的な解決策?

ありがとうございました!

答えて

2
#get parent directory: 
import os 
parentDirectory = os.path.abspath(os.path.join(os.getcwd(), os.pardir)) 

#now open your image 
from PIL import Image 
image = Image.open(os.path.join(parentDirectory, 'Image_Folder', 'Code32.PNG')) 
image.show() 
+0

(ちょうどos.pathモ​​ジュールを表示するには –

+0

完璧なおかげで! – user6142489

2

使用パス:私は私の質問で述べたよう

../Image_Folder/Code32.png 
+0

それは、仕事だろうが、私はパスがさえ、私はコマンドラインからのGitHubにアクセスしていたときにどのように見えるかわかりません。 +1のままでしたが、チャーリーの答えは本当に私が後にしたものでした。しかし、ありがとう! – user6142489

関連する問題