2016-10-01 6 views
0

どうすればpythonで保存されたファイルのパスディレクトリを表示できますか? 広告たとえば、私がIDLE3(Fedoraの24)で始まり、私は上のIDLEコード保存:/ホーム/ JETSON /デスクトップ/パイソン/プログラムと、コード内に書かれている:ファイルがPythonで保存されるディレクトリを印刷

f = open("Hello.txt","w") 
f.write("This is a test","\n") 
f.close() 

私の質問は:後f.close私はディレクトリをつかんで印刷する

import sys.os 

print("The file is saved in ",direcotrysaved) 

可能ですか?

+0

@SSNRこれは、現在の '.py'ファイルへのパスを与えます。このファイルは、' open'がファイルを開く場所である必要はありません。 – zvone

+1

'sys.os'とは何ですか? –

答えて

0

パスが指定されていない場合、ファイルは現在の作業ディレクトリに開かれます。これはos.getcwd()によって返されます。

あなたは現在の作業ディレクトリを取得するため os.getcwd()を使用することができます
0

import os 

os.getcwd() 

それを開いたときにそうでない場合、あなたはまた、例えば、ファイルのフルパスを指定することができます

f.open('/path/to/the/folder/Hello.txt', 'w') 
1

絶対パスへの相対パスを変換します

directory = os.path.dirname(path) 

かかわらずfilenameが何であるかの動作します:

path = os.path.abspath(filename) 

は、次に絶対パスからディレクトリだけを取ります。それは単なるファイル名、相対パスまたは絶対パスで可能です。

他の有用な機能については、os.path documentationを参照してください。

0

f.nameを使用すると、ファイル名を別の変数として指定しなかった場合、ファイル名が使用されます。
os.path.abspath()を使用すると、ディレクトリパス(この場合は「/ home/rolf/def」)を含む完全なファイル名が提供されます。
os.path.dirname()を使用すると、既に知っているとおりにファイル名が削除されます。

>>> import os 
>>> f=open('xxxx.txt','w') 
>>> f.close() 
>>> print(f.name,'Stored in', os.path.dirname(os.path.abspath(f.name))) 

xxxx.txt Stored in /home/rolf/def 
関連する問題