1

私はPythonが初めてです。1 つのパスを入力os.walk()して、すべてのファイルを検索し、ファイルの名前を返すために使用しようとしています。また、ファイル サイズを取得するために使用os.path.getsize()し、最後にそれらを csv ファイルに書き込みたいと考えています。

ただし、ファイル名が英語ではなく、中国語、ドイツ語、フランス語などの場合、Python はそれを認識できず、ファイルのサイズを返しません。os.path.getsize(path)(以下の例を参照) を使用したいのですが、ファイルの名前が認識されません。Python にファイル名を認識させ、これらの種類のファイルのサイズを返すにはどうすればよいですか?

例: ファイルの名前は次のとおりです"Показатели естественного и миграционного прироста до 2030г.doc"path="C:\xxxx\xxx\xxxx\Показатели естественного и миграционного прироста до 2030г.doc"

4

1 に答える 1

3

Unicode 入力を渡すと、os.walk()ファイル名も Unicode として返されます。

以下はあなたのために働くはずです

your_base_path = u"C:\\Directory" # note this is Unicode
for root, dirs, files in os.walk(your_base_path):
    for f in files:
         print os.stat(os.path.join(root, f)).st_size
于 2013-08-07T14:39:33.853 に答える