2017-02-24 3 views
0

Pythonプロジェクトと同じフォルダに新しいディレクトリを作成し、その場所に新しいテキストファイルを作成したいとします。Python 3:相対ディレクトリにファイルを作成する

どうすればを絶対ディレクトリ名なしで使用できますか?

+0

私はあなたが(あなたがいずれかを表示しないよう、我々はただ推測することができます)を使用している機能は、相対パスを取ることができますかなり確信している... –

+0

は、あなたが使用しているコードを投稿してください。作成と使用のコマンドで相対パス名を使うのは簡単なことです。 – Prune

答えて

3

スクリプトがどこから呼び出されたかに関係するpythonプロジェクトのディレクトリがあり、フォルダを作成する絶対ディレクトリか、スクリプトを呼び出す場所を基準にした場所のどちらかがあると仮定すると、以下のようになります。

ここで、2行目は、base_directoryからtarget_directoryへの相対パスを返します。

現在の作業ディレクトリが必要な場合は、os.path.relpath('.','/')またはos.path.realpath('.')またはos.getcwd()のようにすることができます。スクリプトの開始後に現在の作業ディレクトリを変更しない場合は、すべて同じです。

そこから、パーツの前に適切な相対ディレクトリを追加するだけで、ファイルを開くことができます。

f=open(rel_directory+'/'+filename,'a') 
f.write("some stuff I'm adding to the file") 
f.close() 
+0

ありがとうございます!これは非常に便利なコードです。 –

関連する問題