2017-07-14 13 views
0
BASE_FOLDER = "/Users/User/Desktop/DATA" 
BOOK_GROUP_FOLDER = os.path.join(BASE_FOLDER, "book_group") 
SCREEN_GROUP_FOLDER = os.path.join(BASE_FOLDER, "screen_group") 
hidden_file = ("/Users/User/Desktop/DATA/book_group/.DS_Store") 

def listdir_ignorehidden(path): #Ignore HiddenFiles 
    for f in os.listdir(hidden_file): 
     if not f.startswith ('.') and os.path.isfile(os.path.join(hidden_file , f)): 
      yield f 

def get_person_folder_reading(persons_folder, screen_type): 
    base_folder = os.path.join(persons_folder, screen_type) 
    return [os.path.join(base_folder, fn) for fn in os.listdir(base_folder) if fn not in ["test", ".Data", "._.Data"]][0] 

OSError: [Errno 20] Not a directory: '/Users/User/Desktop/DATA/book_group/.DS_Store/eye_tracker/paper'OSErrorの:[errnoを20]ないディレクトリ、.DS_Store

私は別のディレクトリから複数のファイルを読み込むしようとしています。しかし、私はmacの.DS_Storeによって引き起こされるように見えるエラーを取得します。私はそれを無視すべき関数を定義しましたが、それは役に立ちません。

どのようにそれを処理するためのアイデアですか?

+0

['os.path.isdir'](https://docs.python.org/2/library/os.path.html#os)を参照してください。 .path.isdir) – Himal

答えて

0

.DS_STOREでは問題ありません。ディレクトリ内のすべてのエントリがディレクトリであると仮定しているからです。エントリがディレクトリかどうかを確認してから、listdir()を実行してください。

関連する問題