2017-11-03 14 views
0

私は、ディレクトリの名前を入力するプロンプトを表示し、すべてのファイル名をリストに保存するプログラムを作成しています。名前を知っている特定のディレクトリへのパスを取得するにはどうすればよいですか?名前でディレクトリを開くにはどうしたらいいですか?

私はos.path.dirname(os.path.realpath(__file__))を試しましたが、プログラムのファイルが検索可能なディレクトリではなく、現在のディレクトリのみが表示されます。

+0

ユーザが入力したディレクトリ名で 'os.path.realpath(__ file __)'を置き換えてみてください。 –

答えて

1

__file__は、現在のファイルのパスを含むPythonの特別な変数です。あなたの質問を正しく理解したら、__file__の代わりにプロンプ​​トからユーザ入力を保存した変数を渡すだけです。だから、のようなものがあります:

print("what dir do you want to search?") 
searchable_dir = input() 
print(
    "You selected " + 
    os.path.dirname(os.path.realpath(searchable_dir)) 
) 

これは、学習運動として良いですが、os.listdirを使用する好ましい方法は以下のようになり、ディレクトリ内のファイルのリストを取得することに注意してください。

+0

ありがとうございました!唯一のことは、自分のコンピュータ上のディレクトリを探したかったということです(私はディレクトリ#1にあり、プログラムはディレクトリ#1にあり、ディレクトリ#2を調べてファイルを探したかったとします) – kporcelainluv

+0

'searchable_dir' hereあなたのコンピュータ上の任意のディレクトリにすることができる文字列です。おそらく、Pythonコンソールで 'os.path.dirname(os.path.realpath("/home/username/"))'のようなものを試してみてください。 – 7yl4r

関連する問題