Рубрики
Без рубрики

Листинг каталогов Python

В этой статье мы посмотрим, как мы можем выполнить список каталогов Python. Это позволит нам перечислить все файлы и каталоги в текущей работе

Автор оригинала: Pankaj Kumar.

Листинг каталогов Python

В этой статье мы посмотрим, как мы можем выполнить список каталогов Python. Это позволит нам перечислить все файлы и каталоги в текущем рабочем месте.

Часто. Мы можем захотеть быстро посмотреть на имена файлов и получить информацию, используя Python.

Давайте посмотрим, как мы можем сделать это быстро и легко!

1. Каталог каталогов Python с использованием OS.Listdir ()

Это короткий и сладкий метод для выполнения списка каталогов Python из вашего текущего каталога!

Это действительно одна линия. Не верь мне? Вот пример. Это относится к любой операционной системе, будь то Windows/Linux/MacOS.

import os

print(os.listdir())

Пример выпуска

>>> import os
>>> os.listdir()
['.bashrc', '.git', '.nvimrc', '.vimrc', '.xinitrc', '.zshrc', 'Autumn.jpg', 'README.md', 'config']

Это вернет список всех файлов и вложенных папок из текущего каталога.

Если вы хотите указать точный путь, вы можете просто передать его как аргумент для OS.Listdir (путь) !

>>> os.listdir(r'/home/vijay/manjaro-dotfiles')
['.bashrc', '.git', '.nvimrc', '.vimrc', '.xinitrc', '.zshrc', 'Autumn.jpg', 'README.md', 'config']

Использовать Сырые строки (Строки с префиксом r ) Когда вы имеете дело с путями, поскольку вам не нужно избежать любых обратных челков (для прохождения Windows).

2. Используйте OS.Path.join () с OS.Listdir ()

Если вы хотите распечатать абсолютный путь всех файлов из текущего каталога, просто добавьте OS.Path.join () к OS.Listdir () Функция!

Мы сделаем функцию для этого, которая просто получает полный путь и возвращает список всех таких имен.

import os

def list_full_paths(directory):
    return [os.path.join(directory, file) for file in os.listdir(directory)]

print(list_full_paths(r'/home/accornition/manjaro-dotfiles'))

Выход

['/home/vijay/manjaro-dotfiles/.bashrc', '/home/vijay/manjaro-dotfiles/.git', '/home/vijay/manjaro-dotfiles/.nvimrc' , '/home/vijay/manjaro-dotfiles/.vimrc', '/home/vijay/manjaro-dotfiles/.xinitrc', '/home/vijay/manjaro-dotfiles/.zsh    rc', '/home/vijay/manjaro-dotfiles/Autumn.jpg', '/home/vijay/manjaro-dotfiles/README.md', '/home/vijay/manjaro-dotfiles/config'] 

Действительно, это дает нам абсолютный путь, из корневого каталога!

3.PYPHON Directory Список с использованием OS.Walk ()

Мы также можем использовать Os.walk () Функция пройти через дерево каталога.

Затем мы можем распечатать каталоги и файлы индивидуально.

for top, dirs, files in os.walk(os.getcwd()):
    print("Printing directories...")
    for dir in dirs:
        print(os.path.join(top, dir))
    print("Printing files....")
    for file in files:
        print(os.path.join(top, file))

Выход

Printing directories...
/home/vijay/manjaro-dotfiles/config/cmus                                                                            /home/vijay/manjaro-dotfiles/config/compton                                                                         /home/vijay/manjaro-dotfiles/config/termite                                                                           Printing files....
Printing directories...
Printing files....                                                                                                   /home/vijay/manjaro-dotfiles/config/cmus/my.theme                                                                    Printing directories...
Printing files....
/home/vijay/manjaro-dotfiles/config/compton/compton.conf                                                             Printing directories...
Printing files....
/home/vijay/manjaro-dotfiles/config/termite/config 

Вы можете использовать любой из вышеупомянутых трех методов, в зависимости от вашего сценария использования.

Первый метод является самым простым и рекомендуемым, но если вы хотите полный путь, и хотите путешествовать рекурсивно, использовать Os.walk () Отказ

Заключение

В этой статье мы узнали, как мы могли бы перечислить файлы и каталоги в Python, используя разные методы.

Рекомендации