2009-03-18 8 views

答えて

20

ファイル拡張子に基づいて、それをやっている場合は、このような何か行うことができます:あなたがある場合をgaranteeことができるかどう

import os 
directory = "C:/" 
extension = ".tga" 
list_of_files = [file for file in os.listdir(directory) if file.lower().endswith(extension)] 

明らかにあなたが(下を省略することができますが)ファイル。また、優れたpath.py(http://pypi.python.org/pypi/path.py)モジュールもあります。

ファイル拡張子がわからない場合は、ファイルをデコードしてファイルタイプを検出するためにPIL(http://www.pythonware.com/products/pil/)のようなものを使用できます。

+0

を私が試しましたこれと他の、しかし何とか私は何も得られませんでした。 "C:/ Documents and Settings/yunus/My Documents/My received Files /" これは問題ありませんか? –

+0

あなたの場合:os.listdirでファイルの 輸入OS ( "C:/ DocumentsとSettings /ユヌス/マイドキュメント/マイ受信したファイル/"): 印刷ファイル はそれが何を印刷していますか? – Jotham

+0

申し訳ありませんが、コメントシステムは私の改行の上に詰まっているようですが、あなたはそれを解読できると願っています。) – Jotham

1

>>> import os 
>>> for file in [tga for tga in os.listdir(directory) if tga.endswith(".tga")]: 
>>>  print file 
14
import glob, os 
for filename in glob.glob(os.path.join(yourPath, "*.tga")) 
    print(filename) 
2

次の例は、以下に示すようにエレガントなソリューションを提供していますfilterを、使用しています。

import os 
files = filter(lambda x: x.endswith('.tga'), os.listdir(DIR)) 
0

マイタルガ/ Vistaは、時には他の拡張しばしば.VSTとの.tgaを持っている:

import os 
from glob import glob 
import PIL 

filenames = [] 
for filename in glob(os.path.join(dirname, "*.*")): 
    try: 
     img = PIL.Image(filename) 
     if img.format == "TGA": 
      filenames.append(filename) 
    except IOError: // from PIL if not recognised 
     pass 
関連する問題