2016-10-21 11 views
0

私はコーディングで絶対に初心者ですので、これは非常に基本的な質問です。私は別のディレクトリ(私が働いている現在のもの)から特定のファイルを開き、何かをやろうとしています。ファイルを見つけるために尋ねるときにはうまくいくが、ファイルを開くことはできない(「FileNotFoundError:[Errno 2] No such file or directory」)どこが間違っているのかわからない。ここに私のコードです:python3の別のディレクトリにあるファイルを反復して開きますosx

for file_name in os.listdir("/Users/sujathakoduvayurp/Downloads/exercises-and-examples/Chapter 9/exercises"): 
if file_name.endswith(".dna"): 
    print (file_name) 

これはうまく、私は正しい拡張子のファイルのリストを取得します。 xaa.dna xab.dna xac.dna xad.dna xae.dna xaf.dna xag.dna xah.dna xai.dna xaj.dna

しかし、ときに私:そうのようにこれを行う:

for file_name in os.listdir("/Users/sujathakoduvayurp/Downloads/exercises-and-examples/Chapter 9/exercises"): 
if file_name.endswith(".dna"): 
    dna_file= open("/Users/sujathakoduvayurp/Downloads/exercises-and-examples/Chapter 9/file_name","r") 

私は前に述べたようにエラーmsgを受け取る。私は問題が何であるか分かりません。どんな助けもありがとう。 ありがとう! PS:ここで正しく出てくるかどうかはわかりませんが、インデントは問題ありません。

答えて

0

エラーは、この行を次のとおりです。

dna_file= open("/Users/sujathakoduvayurp/Downloads/exercises-and-example/Chapter 9/file_name","r") 

それはそれはパス文字列に含まれているので、あなたがfile_nameというファイルを開こうとしていると思います。ファイルを開くには、パスをfile_name変数で連結してください。このコードはfile_nameがパス文字列から削除されているので、ファイルを開いて、そして今、ファイル名を含む変数である必要があります

for file_name in os.listdir("/Users/sujathakoduvayurp/Downloads/exercises-and-examples/Chapter 9/exercises"): 
if file_name.endswith(".dna"): 
    dna_file = open("/Users/sujathakoduvayurp/Downloads/exercises-and-examples/Chapter 9/" + file_name,"r") 

:たとえば。

関連する問題