"WindowsError: [Ошибка 2]" при переборе файлов в C:\\ с использованием "os.walk"
Я пытаюсь создать программу, которая перебирает все файлы на моем диске 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'
Я подозреваю, что источником проблемы является часть $$$.