0
Словарь «d» состоит только из последних итерированных вложенных папок и значений, когда я хочу добавить все папки. Я не понимаю, почему мой словарь начинает обновление из пустого словаря после изменения папки.Python, итерация по каталогам и обновлению словаря
import os
from os.path import join
for (dirname, dirs, files) in os.walk('.'):
d = dict()
for filename in files:
if filename.endswith('.txt') :
value_thefile = os.path.join(dirname,filename)
key_size = os.path.getsize(value_thefile)
d.update({key_size:value_thefile})
print d
Потому что вы назначаете его пустой словарь на каждой итерации внешнего цикла .. .? Вот что делает 'd = dict()'. – jpmc26
Как указывает @ jpmc26, попробуйте поместить инструкцию 'd = dict()' перед первым циклом. – tomasyany
Ох ... Спасибо! – g1st