' WindowsError:[错误2]'使用' os.walk'在C:\\中迭代文件时

时间:2016-09-30 22:26:56

标签: python python-2.7 python-os

我试图创建一个迭代C驱动器中每个文件的程序, 检查文件的大小和 将大小值附加到名为' filesizes_stored'。

的列表中
from matplotlib import pyplot as plt
import os
import collections

filesizes_stored = []

for (path, dir, files) in os.walk("c:/"):
    for filename in files:
        print unicode(os.path.join(path, filename), 'cp949')
        # print os.path.getsize(unicode(os.path.join(path, filename)))
        filesizes_stored.append(
            os.path.getsize(
                unicode(
                    os.path.expandvars(
                        os.path.expanduser(
                            os.path.join(path, filename))),'cp949'))/1024.0)

print len(filesizes_stored)

我在python 2.7中编写了这个脚本,而我的计算机操作系统是Windows 7。

当我执行此脚本时,执行过程会顺利进行一段时间,对大多数文件成功运行,但随后执行停止并显示错误

Traceback (most recent call last):
  File "C:/Users/Kim/PycharmProjects/filesize_gatherer/gather_filesize.py", line 15, in <module>
    os.path.expanduser(os.path.join(path, filename))), 'cp949'))/1024.0)
File "C:\Users\Kim\Anaconda2\lib\genericpath.py", line 57, in getsize
    return os.stat(filename).st_size
WindowsError c:/Users\Kim\AppData\Local\Temp\$$$52FE.tmp
: [Error 2] : u'c:/Users\\Kim\\AppData\\Local\\Temp\\$$52FE.tmp'

我怀疑&#39; $$$&#39;文件名的一部分作为问题的根源..

0 个答案:

没有答案