Хотите получить подкаталоги в каталоге в списке - PullRequest
0 голосов
/ 09 апреля 2019

Я использую Ubuntu 16.04. На моей машине я работаю в каталоге загрузок. У меня есть каталог с картинками внутри загрузок, внутри картинок у меня есть еще 2 папки с картинками в них.

Каталог выглядит следующим образом

~ / Загрузки / фото / folder1

~ / Загрузки / фото / folder2

Я хочу получить список каталогов, например

directories = ['home/user/Downloads/pictures/folder1','home/user/Downloads/pictures/folder2']

Я использую следующий код

import os

path = '~/Downloads/pictures'

folders = []

# r=root, d=directories, f = files
for r, d, f in os.walk(path):
    for folder in d:
        folders.append(os.path.expanduser(os.path.join(r, folder)))

for z in folders:
    print(z)

Это прекрасно работает в Windows, но когда я запускаю Ubuntu, папка папок пуста с длиной 0. Как мне получить папку 'folder' для заполнения нужными мне каталогами?

1 Ответ

0 голосов
/ 09 апреля 2019

Чтобы получить каталоги из пути, вы должны сначала правильно построить свой путь (посмотрите на использование expanduser для получения пути пользователя), затем ищите каталоги (обратите внимание на использование понимания списка):

import os
from os.path import expanduser

usrdir = expanduser("~")
path = usrdir+'/Downloads/pictures'

folders = [d[0] for d in os.walk(path)]
...