Python Basename

Python Программирование и разработка

Python предоставляет различные методы взаимодействия с операционной системой для управления именами файлов и именами каталогов через модуль os. В этой статье обсуждается один из встроенных методов Python, используемых для получения базового имени файла по заданному пути: метод os.path.basename(), который позволяет нам извлечь имя файла из указанного пути.

Мы должны использовать os.path.basename() в коде, импортируя модуль os. Этот метод os.path.basename() дополнительно использует функцию split() для разделения строки пути на пару, которая будет возвращать начало и конец. Головная часть предназначена для имени каталога, а хвостовая часть возвращается методом os.path.basename(). Давайте подробнее об этом методе.

Синтаксис python basename

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

Os.path.basename(path)

Os.path — это подрежим модуля os для манипулирования именами путей. Итак, сначала нам нужно импортировать модуль os для этого метода базового имени.

Параметр передается в python basename:

Этот метод os.path.name() принимает только указанную строку пути, представляющую путь к файловой системе.

Возвращаемое значение в python basename:

os.path.basename() вернет значение в строке заданного пути, которое является базовым именем файла. Теперь у нас будет простой пример реализации того, как работает этот метод os.path.basename().

Пример 1

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

В окне используется разделитель с обратной косой чертой ’\’; мы можем проверить или подтвердить этот разделитель с помощью метода os.path.sep(). Переменная «file_dir» имеет путь «Users\abc\Downloads\My Window», который является именем каталога файла, а «file_name» имеет путь, заданный «Users\abc\Downloads\My Window\index.html». Обе переменные возвращают базовое имя файла с синтаксисом Window. Мы также будем печатать разделитель окон с помощью метода os.path.sep().

import os.path

file_dir = os.path.basename(«Users\abc\Downloads\My Window»)

print(file_dir)

file_name = os.path.basename(«Users\abc\Downloads\My Window\index.html»)

print(file_name)

print(os.path.sep)

Экран консоли показывает выходные данные, печатающие имя каталога файла, базовое имя файла и знак разделителя.

Экран консоли показывает выходные данные

Теперь у нас есть разделитель Unix, используемый в этом примере ниже. Unix использует косую черту ’/’ в качестве разделителя пути. Мы можем получить этот разделитель, напечатав метод os.path.sep().

import os.path

file_dir = os.path.basename(«/Downloads/ My Unix»)

print(file_dir)

file_name = os.path.basename(«/Downloads/ My Unix /unix.txt»)

print(file_name)

Это вывод приведенного выше кода, как показано ниже.

о вывод приведенного выше кода, как по

Пример 2

Давайте рассмотрим пример извлечения имени файла с помощью метода os.path.basename(). Мы импортировали os.path для доступа к методу os.path.basename() в этом конкретном примере. У нас есть «базовое имя», которое вернет базовое имя файла, которое мы назначили в os.path.basename. С оператором print() у нас будет базовое имя.

import os.path

basename = os.path.basename(«/home/example/exampleFile.txt»)

print(basename)

Здесь у нас есть «/home/example/» в качестве имени пути и «exampleFile.txt» в качестве базового имени, которое показано в виде вывода ниже.

базового имени, которое показано в виде

Пример 3

В этом примере мы найдем базовое имя каталога или имени папки. Имя папки или каталога также имеет базовое имя в полном пути. В этом примере у нас есть «Документы» в качестве базового имени из пути «/home/MyDocuments/Documents», который передается в os.path.basename(). Переменная ’basename’ вернет вывод, который вызывается в функции print().

import os.path

basename = os.path.basename(«/home/MyDocuments/Documents»)

print(basename)

Мы получили «Документы» в качестве базового имени из приведенного выше кода. Результат показан на скриншоте ниже.

олучили «Документы» в качестве базового имени и

Пример 4

Чтобы получить базовое имя из URL-адреса, нам нужно импортировать библиотеку из модуля стандартного пакета urllib, который называется urlparse. Это поможет нам разделить строки URL на компоненты или снова объединить строку URL в компоненты.

В этом примере будет получено базовое имя URL-адреса для формирования переменной «URL», которая имеет строковый URL-адрес «https://docs.python.org/3/download.html». URL-адрес передается в метод urlparse() в качестве аргумента, который разделит URL-адрес на части. Этот анализ URL-адреса хранится в новой переменной «x», которая будет отображать строку разделенного пути URL-адреса. На этот раз мы используем os.path.basename() через оператор печати.

import os

from urllib.parse import urlparse

url = «https://docs.python.org/3/download.html»

= urlparse(url)

print(x.path)

print(os.path.basename(x.path))

Отображение разделенной строки URL-адреса и базового имени из URL-адреса, как показано ниже:

деленной строки URL-адреса и базового имени из

Пример 5

В этом примере используется метод os.path.split() для возврата пары «голова» и «хвост» по отдельности. Для этого мы должны передать указанный путь в качестве аргумента в метод os.path.split(). Мы получим «голову» и «хвост» отдельно через оператор печати.

import os

path = «/Users/Desktop/Article/python/code.py»

head_tail = os.path.split(path)

print(head_tail)

Вы можете увидеть вывод этого кода, поскольку он показывает головную часть и хвостовую часть по отдельности.

можете увидеть вывод этого кода, поскольку он показывает голо

Пример 6

Мы извлекли базовое имя и расширение, определенные в этом примере. Мы будем извлекать имя файла без расширения с помощью другого метода os.path.splitext(). Этот метод даст только базовое имя, определенное в os.path.basename().

Мы назначили путь как «home/example/example3.txt» в переменной «basename». Используйте индекс как «0», чтобы получить базовое имя без расширения.

import os.path

path_name=«home/example/example3.txt»

basename = os.path.splitext(os.path.basename(path_name))[0]

print(basename)

У нас есть вывод basename как «example3» без расширения на экране консоли.

У нас есть вывод basename как «

Заключение

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

Читайте также:  Функция Log10 в Python
Оцените статью
bestprogrammer.ru
Добавить комментарий