ファイル名とサイズをタプルに格納してテキスト ファイルに書き込むには、次のようにします。
from Tkinter import Tk
from tkFileDialog import askdirectory
from array import *
import os
Tk().withdraw()
fileDir = askdirectory()
print(fileDir)
dirList = os.listdir(fileDir)
data = ((fname, str(os.path.getsize(fileDir + "/" + fname))) for fname in dirList)
outputFile = open('myoutputfile.csv', 'w')
for entry in data:
outputFile.write(','.join(entry) + '\n')
outputFile.close()
私のpythonインストールディレクトリでこれを実行すると、次のようなファイルが得られます。
DLLs,4096
Doc,0
include,32768
Lib,65536
libs,4096
LICENSE.txt,40080
NEWS.txt,285115
python.exe,27136
pythonw.exe,27648
README.txt,54967
Scripts,0
tcl,4096
Tools,4096
Excelで.csvファイルとして開くことができるはずのものは問題ありません。ファイル名にコンマや改行などが含まれている場合は、ファイル名を引用する必要がある場合があることに注意してください。
より重いものにはcsv モジュールがありますが、そのような単純なファイルにはやり過ぎだと思います。使用に興味がある場合は、次のようになります。
import csv
with open('myoutputfile.csv', 'wb') as outputFile:
csvwriter = csv.writer(outputFile, dialect='excel')
for entry in data:
csvwriter.writerow(entry)