2017-07-12 4 views
0

であれば、私は私が間違っているのかを見ることができないチェックmp3ファイルが指定したディレクトリ

import os 

def check(): 
    path = "d://Mu$ic//" 
    for file in os.listdir(path): 
     if file.endswith("*.mp3"): 
      print (os.path.join(path,file)) 

check() 

は、出力は、私が間違っているの何任意のアイデアを表示しないのですか?

+1

試し 'file.endswith(」。mp3' )' – Aaron

+0

うんを使用することができます**ありがとう!** –

答えて

0

(ワイルドカードをある*.mp3ではなく)文字列のサフィックスのendswith一致するので、動作するはず*を省略:

file.endswith(".mp3"):

はまた、あなただけの///を置き換えることができます。

+0

はありがとうそれはうまくいった! :) –

0

フォルダ内のmp3ファイルのみですか?もしそうなら、なぜエンドウンドのチェックが必要ですか? mp3がそのフォルダ内の唯一のファイルタイプであれば、それらが.mp3で終わるかどうかをチェックせずに返すことができるはずです。他のファイルタイプがない限り、endswithチェックが必要です。私はendswithなしであなたのコードをここで行い、フォルダ内のすべての.wavファイルを返しました。

0

あなたのpython 3使用している場合は、私は、必要なものだとglob

import glob 

_path = '{0}**/*.mp3'.format("d://Mu$ic//") 
file_lst = glob.glob(_path, recursive=True) 
print(file_lst) 

['2.mp3', '3.mp3', ...] 
関連する問題