Как получить текущий рабочий каталог в Python

How Get Current Working Directory Python



Имя файла или папки можно использовать с полным путем или просто упоминать имя файла или папки только для использования их в сценарии. Полный путь к файлу или папке из корневого каталога указывается абсолютным путем. Когда имя файла используется без имени пути в сценарии, тогда Текущий рабочий каталог принимается как путь к файлу и называется относительным путем. В Python в качестве текущего рабочего каталога устанавливается расположение каталога, из которого выполняется скрипт python. В python существует множество модулей для получения текущего рабочего каталога. В этом руководстве показаны способы получения текущего рабочего каталога с помощью различных модулей в Python.

Пример-1: Использование модуля pathlib для получения текущего рабочего каталога

Класс пути модуль pathlib используется для чтения текущего рабочего каталога исполняемого скрипта. Создайте сценарий python со следующим кодом для чтения и печати текущего рабочего каталога с помощью модуля pathlib. В cwd () метод класса Path используется для печати текущего рабочего каталога, из которого выполняется сценарий.







# Импортировать путь из модуля pathlib

изpathlibИмпортироватьДорожка

# Получить путь к текущему рабочему каталогу

current_working_directoryзнак равноДорожка.cwd()

# Распечатать расположение текущего рабочего каталога

Распечатать('Расположение текущего рабочего каталога:')

Распечатать(current_working_directory)

Выход:

Следующий вывод появится после выполнения вышеуказанного сценария. Здесь путь к текущему рабочему каталогу без имени сценария показан в выходных данных.





Пример-2: Использование normpath () и abspath () для получения текущего рабочего каталога

Использование модуля os - это еще один способ получить текущий рабочий каталог. В классе пути модуля os существуют различные методы для получения текущего рабочего каталога. Normpath () и abspath () методы двое из них. Эти методы возвращают текущий рабочий каталог в виде строки. Создайте файл python со следующим скриптом, чтобы проверить назначение этих функций.





# Импортировать модуль ОС

Импортировать ты

# Распечатать текущий рабочий каталог с помощью функции normpath ()

Распечатать('Текущий рабочий каталог (с использованием normpath ()):')

Распечатать(ты.дорожка.dirname(ты.дорожка.нормальный путь(__файл__)))

# Распечатать текущий рабочий каталог с помощью функции abspath ()

Распечатать(' пТекущий рабочий каталог (с использованием abspath ()): ')

Распечатать(ты.дорожка.abspath('.'))

Выход:

Следующий вывод появится после выполнения вышеуказанного сценария. Здесь путь к текущему рабочему каталогу без имени сценария показан в выходных данных.



Пример-3: Использование realpath () для получения текущего рабочего каталога

В realpath () - еще один метод получения текущего рабочего каталога. Создайте файл python со следующим сценарием, чтобы распечатать текущий рабочий каталог с именем сценария, используя realpath () метод . В сценарии требуется __файл__ в качестве значения аргумента, содержащего путь к файлу, в который импортируется модуль os.

# Импортировать модуль ОС

Импортировать ты

# Прочитать текущий рабочий каталог с помощью функции realpath ()

real_pathзнак равно ты.дорожка.реальный путь(__файл__)

# Распечатать текущий рабочий каталог с именем скрипта

Распечатать(' пТекущий рабочий каталог с именем сценария: ')

Распечатать(real_path)

Выход:

Следующий вывод появится после выполнения вышеуказанного сценария. Здесь путь к текущему рабочему каталогу с именем сценария показан в выходных данных.

Пример-4: Использование getcwd () для получения текущего рабочего каталога

С помощью функция getcwd () модуля os - это самый простой способ получить текущий рабочий каталог исполняемого скрипта. Он не содержит аргументов и возвращает CWD в виде строки. Создайте файл python со следующим сценарием, чтобы проверить использование функция getcwd () . Текущий рабочий каталог печатается в начале скрипта. Затем текущий путь к каталогу изменяется с помощью функция chdir () . В команда getcwd () вызывается снова после смены каталога.

# Импортировать модуль ОС

Импортировать ты

# Распечатать текущий рабочий каталог с помощью функции getcwd ()

Распечатать('Текущий рабочий каталог: п', ты.getcwd())

# Изменить текущий рабочий каталог

ты.чдир('/ etc / mail')

# Распечатать текущий рабочий каталог после изменения

Распечатать(' пТекущий рабочий каталог после изменения: п', ты.getcwd())

Выход:

Следующий вывод появится после выполнения вышеуказанного сценария. Здесь перед изменением каталога был напечатан путь к текущему рабочему каталогу без имени сценария. Затем был напечатан измененный путь к каталогу.

Пример 5: Использование getcwd () с try-except для получения текущего рабочего каталога

Создайте файл python со следующим сценарием, чтобы изменить текущий рабочий каталог на основе входного значения и обработать различные типы ошибок. С помощью скрипта можно обработать три типа ошибок. В Ошибка FileNotFoundError будет сгенерирован, если путь, взятый из ввода, не существует. В Ошибка NotADirectoryError будет сгенерирован, если путь, взятый из входных данных, не является каталогом. В Ошибка PermissionError будет сгенерирован, если путь, взятый из ввода, недоступен.

# Импортировать модуль ОС

Импортировать ты

# Введите путь к каталогу

cwdзнак равно Вход('Введите путь к текущему рабочему каталогу: п')


пытаться:

# Изменить текущий рабочий каталог

ты.чдир(cwd)

# Распечатать текущий рабочий каталог с помощью функции getcwd ()

Распечатать('Текущий рабочий каталог: п', ты.getcwd())

# Вызвать ошибку, если каталог не существует

КромеFileNotFoundError:

Распечатать('Каталог не существует'.)

# Вызывает ошибку, если входной путь не является каталогом

КромеNotADirectoryError:

Распечатать('% s не каталог'%(cwd))

# Вызвать ошибку, если каталог недоступен

КромеPermissionError:

Распечатать(«Отказано в разрешении на изменение каталога».)

Выход:

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


Следующий вывод появится после выполнения вышеуказанного сценария, если путь не существует.


Следующий вывод появится после выполнения вышеуказанного сценария, если выбранный путь недоступен.

Заключение:

Использование модулей pathlib и os для чтения текущего рабочего каталога показано в этом руководстве на различных примерах. В этом руководстве также был показан способ получения текущего рабочего каталога после изменения текущего рабочего каталога на основе ввода данных пользователем.